第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

Chrome擴(kuò)展程序:后臺腳本未啟動,僅在刷新后

Chrome擴(kuò)展程序:后臺腳本未啟動,僅在刷新后

互換的青春 2022-09-02 10:26:14
三天前,我開始使用chrome擴(kuò)展程序,我非常喜歡它。我遇到了一個(gè)問題:我最小化了重現(xiàn)我的問題的腳本:如果我 stackoverflow.com,我可以單擊該圖標(biāo),如果它向后臺腳本發(fā)送消息并收到消息“工作”,則會打開一個(gè)彈出窗口,上面寫著“工作”。如果我現(xiàn)在重新啟動瀏覽器,我會得到一個(gè)彈出窗口,說明開發(fā)人員模式下的擴(kuò)展可能是有害的,以及我是否要停用它們。我關(guān)閉此消息,當(dāng)我現(xiàn)在單擊擴(kuò)展名時(shí),它不起作用,我收到以下錯(cuò)誤:Unchecked runtime.lastError: Could not establish connection. Receiving end does not exist.我發(fā)現(xiàn)后臺腳本沒有運(yùn)行(我沒有收到來自后臺的警報(bào).js或打印到后臺.js控制臺)。我想擴(kuò)展程序以及背景.js可能被chrome阻止啟動,因?yàn)樗情_發(fā)人員模式下的擴(kuò)展程序。使擴(kuò)展再次運(yùn)行的唯一方法是從 chrome://extensions 刷新擴(kuò)展。我嘗試使用持久和非持久背景腳本,但這并沒有改變行為。我的分析是否正確,因此是否是在 Webstore 上部署腳本以使其正常運(yùn)行的唯一解決方案?或者,是否有其他方法可以在Chrome啟動時(shí)使開發(fā)人員模式下的應(yīng)用程序啟動?下面是最小示例:manifest.json{    "name": "BackgroundScript Error",    "version": "0.0.1",    "manifest_version": 2,    "description": "When starting Chrome, background doesn't start, but when refreshing, background starts",    "page_action": {        "default_icon": "icon.png",        "default_popup": "popup.html"    },    "permissions": ["declarativeContent", "<all_urls>"],    "background": {        "scripts": ["background.js"],        "persistent": false    }}背景.jschrome.runtime.onInstalled.addListener(function() {    console.log('Background script is running');    alert("Background is running");    chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {    chrome.declarativeContent.onPageChanged.addRules([{        conditions: [new chrome.declarativeContent.PageStateMatcher({            pageUrl: {hostEquals: 'stackoverflow.com'},        })],        actions: [new chrome.declarativeContent.ShowPageAction()]    }]);    });    console.log('setting up connection to popup');    chrome.runtime.onConnect.addListener(connected);});chrome.runtime.onMessage.addListener(function(request, sender) {    console.log(request.action);});function connected(p) {    console.log("connected to "+p);    p.postMessage({action: 'didSomething', result: 'worked' });    p.onDisconnect.addListener(disconnected);}function disconnected(p) {    console.log("disconnected from "+p);}
查看完整描述

2 回答

?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊

不,您無需部署到網(wǎng)上商店即可使其正常工作。

你遇到了一個(gè)問題,因?yàn)槟阋褜⒋蟛糠趾笈_腳本活動附加到偵聽器 - 僅當(dāng)安裝擴(kuò)展或清單版本更改時(shí)才會觸發(fā)偵聽器。第二次重新啟動瀏覽器時(shí),您的擴(kuò)展已安裝,清單版本保持不變,因此不會觸發(fā)該事件。chrome.runtime.onInstalled


查看完整回答
反對 回復(fù) 2022-09-02
?
白衣非少年

TA貢獻(xiàn)1155條經(jīng)驗(yàn) 獲得超0個(gè)贊

我想出了該怎么做:

如前所述,已安裝偵聽器中的函數(shù)僅在實(shí)際安裝腳本時(shí)調(diào)用(例如刷新),而不是在重新啟動瀏覽器時(shí)調(diào)用。

我發(fā)現(xiàn)了我的新手錯(cuò)誤:我異步注冊了聽眾,因?yàn)樵?a >Chrome文檔中被列為“不該做”。詳細(xì)來說,這條線應(yīng)該從已安裝的監(jiān)聽器中取出:

chrome.runtime.onConnect.addListener(connected);

感謝您為我指出正確的方向!


查看完整回答
反對 回復(fù) 2022-09-02
  • 2 回答
  • 0 關(guān)注
  • 277 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號