I am using react hooks inside a chrome extension, but when I when updating the state, it is fired multiple times, its not happening when I just console log...
// browser.js
chrome.browserAction.onClicked.addListener(tab => {
chrome.tabs.sendMessage(tab.id, {
type: "toggle-popup"
}, null);
});
// content.js
const [popup, setPopup] = useState(false);
let number = 1
const togglePopup = () => setPopup(!popup);
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
if (request.type == "toggle-popup") {
number++
togglePopup()
console.log(number)
console.log(popup)
}
})
Its giving me these results...
//1st click on tab icon
2
false
//2nd click on tab icon
3
false
2
true
//3rd click
4
false
3
true
2
true
2
false
I just want it to toggle true / false on click to show / hide a div on the page (I don't want to use popup.js). Any idea what I am doing wrong?