如何避免错误:Cannot access a chrome:// URL



我是chrome扩展开发中的新成员,在开发过程中,当我试图在chrome浏览器的开始页打开扩展时,我在控制台得到此错误。

图片链接

Uncaught (in promise) Error: Cannot access a chrome://URL

我可以避免这个错误或任何其他方法来修复它吗?

我也阻止打开扩展窗口,但这不是问题的解决方案

代码来自App.vue文件

chrome.tabs.query(queryOptions, (tabs) => {
let url = tabs[0].url;
if (url.indexOf("chrome://") !== -1) {
window.close();
}

background.js

chrome.action.onClicked.addListener(function(tab) {
chrome.scripting.executeScript({
target: {tabId: tab.id},
files: ['js/inject.js']
});
chrome.scripting.insertCSS({
target: {tabId: tab.id},
files: ['css/inject.css']
});
});

我需要保持这个窗口不打开在浏览器的开始页,但我也需要修复这个错误的抛出。

解决方案,我从评论作品中得到的,只是简单地检查tab.url:

chrome.action.onClicked.addListener(function(tab) {
console.log(tab.url);
if (tab.url.includes('chrome://')){
console.log('can`t run on start page')
} else {
console.log(tab.url);
chrome.scripting.executeScript({
target: {tabId: tab.id},
files: ['js/inject.js']
});
chrome.scripting.insertCSS({
target: {tabId: tab.id},
files: ['css/inject.css']
});
}

相关内容

  • 没有找到相关文章

最新更新