我的代码在Chrome DevTools中工作正常,但现在我想将我的扩展程序面板从chrome调试器移动到我的扩展程序弹出窗口。
特别是我对此代码有疑问:
function callCommand(cmd) {
chrome.devtools.inspectedWindow.eval(
cmd,
{useContentScriptContext: true},
function (isException, result) {
if (isException || chrome.runtime.lastError) {
console.error('Error', cmd, result, chrome.runtime.lastError);
}
}
);
显然,chrome调试工具会显示Cannot read property 'inspectedWindow' of undefined
,因为checkedpectedWindow仅适用于chrome devtools。
如何以不同方式实施?
答案 0 :(得分:1)
chrome.devtools
API在manifest.json中定义的专用devtools
页面之外不可用,错误消息暗示了这一点。您只能以不同方式重新实现所需的功能,或将其从扩展中删除。
例如,如果要在页面上下文中执行某些代码,请使用以下代码注入<script>
元素:Building a Chrome Extension - Inject code in a page using a Content script