Comments (9)
chrome.bookmarks
needs the "bookmarks" permission.
Ref: https://developer.chrome.com/docs/extensions/reference/bookmarks/
from chrome-extension-boilerplate-react-vite.
It's most likely that you didn't reload the extension after giving the permission in the manifest.
Try reloading the extension with the button below in chrome://extensions/
from chrome-extension-boilerplate-react-vite.
Actually, not only did I reload the extension, I also removed and uploaded it again.
As a side not, the extension doesn't use popup but it is rather injected into the web page
Are you referring to scripts injected via ContentScript?
If so, contentScript has no access to chrome.bookmark
functionality.
https://developer.chrome.com/docs/extensions/mv3/content_scripts/
Why don't you use various chrome APIs in backgroundScript and change it to only do input/output(message api
) in contentScript?
from chrome-extension-boilerplate-react-vite.
Didn't know I could retrieve data that changed outside the render-dom this way.
This works perfectly. Thank you. You're the best 🙌🏼
from chrome-extension-boilerplate-react-vite.
Thank you for your contribution. We will check and reply to you as soon as possible.
from chrome-extension-boilerplate-react-vite.
Thanks for the quick reply @aarcangeli but I already have that in place
from chrome-extension-boilerplate-react-vite.
Actually, not only did I reload the extension, I also removed and uploaded it again.
As a side not, the extension doesn't use popup but it is rather injected into the web page
from chrome-extension-boilerplate-react-vite.
Thank you @Jonghakseo
Yes that is what I am referring to. Currently, I am injecting the component right from the ContentScript. I am also making the bookmarks call from the background.js file which works great.
The issue is with bookmark search api which is chrome.bookmarks.search
. I get the response but can't seem to get it into the component. Here is my snippet:
The result of the search is assigned to a variable searchresult
but I cant seem to be able to use it in component
from chrome-extension-boilerplate-react-vite.
This is just a React issue.
Re-rendering of React components is scheduled by default with the scheduleUpdateOnFiber method via dispatchAction .
The methods that call dispatchAction are the setState or use~ hooks we use in react.
You seem to think that the data you change outside the render of react-dom cannot be retrieved from the App component because it is not something that can be detected by the App component.
As shown below, generating a message event inside the component and managing the value as a state seems to solve the problem.
happy coding 🎉
import { useState } from "react";
export default function App() {
const [result, setResult] = useState();
const sendMsg = () => {
chrome.runtime.sendMessage("ChromeExtensionBoilerplate", (response) => {
setResult(response);
});
};
console.log(result);
return (
<div className="content-view" onClick={sendMsg}>
content view
</div>
);
}
from chrome-extension-boilerplate-react-vite.
Related Issues (20)
- Theme Storage toggle failed in Content script example HOT 2
- Make husky use pnpm HOT 1
- use of experimental node features causes warnings HOT 1
- Error when importing tailwind css file into content script HOT 11
- How to sync web app authentication with chrome extension HOT 8
- Styles do not get applied using Styled Components library HOT 7
- vite preloadhelper shouldn't be using import statement HOT 9
- Add Mantien UI example integration HOT 4
- Cannot load the extension due to Content Script which is generated in wrong path HOT 1
- enabling source maps results in warning from inline-vite-preload-script.ts HOT 4
- Uncaught SyntaxError: Cannot use 'import.meta' outside a module HOT 1
- Files nested inside content/content-script doesn't auto reload on browser HOT 4
- Chakra styles are not loaded on injected content script HOT 2
- rollup packaging speed optimization HOT 1
- [Question] 각 페이지의 역할에 대해 궁금합니다! Wondering about the role of each page! HOT 5
- Boilerplate Redesign HOT 2
- HMR does not work on Content Scripts Change HOT 4
- Is there any way to use React Developer Tools for debugging my extension? HOT 5
- Why the document default language is Korean? HOT 2
- Chakra UI Components Not Rendering HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chrome-extension-boilerplate-react-vite.