Google chrome 如何添加负页面状态匹配的规则(使用声明性内容API)?

Google chrome 如何添加负页面状态匹配的规则(使用声明性内容API)?,google-chrome,google-chrome-extension,Google Chrome,Google Chrome Extension,我想在选项卡的URL不包含指定关键字时显示我的页面操作 这是一个显示“.gif”在pathSuffix中正匹配规则的示例 chrome.declarativeContent.onPageChanged.addRules([ { conditions: [ new chrome.declarativeContent.PageStateMatcher({ pageUrl: { pathSuffix: '.gif' },

我想在选项卡的URL不包含指定关键字时显示我的页面操作

这是一个显示“.gif”在
pathSuffix
中正匹配规则的示例

chrome.declarativeContent.onPageChanged.addRules([
{   
    conditions: [
            new chrome.declarativeContent.PageStateMatcher({
                    pageUrl: { pathSuffix: '.gif' },
            })  
    ],  

    actions: [ new chrome.declarativeContent.ShowPageAction() ]
}   
是否可以使用此API添加页面状态与特定字符串不匹配时的规则(例如,显示除带有指定后缀(例如“.jpg”)的URL之外的所有URL的页面操作?

不幸的是,否

同样,declarativeContent的目的是在条件不频繁时(因为它比调用JS更有效)将检查转移到本机代码。由于你的负面状况几乎在任何地方都会被激活(尽管如此,代价高昂的行为还是会发生),因此收益会大大减少。你最好听我说

另外,请注意,在所有或大多数页面上有意义的操作最好是作为浏览器操作而不是页面操作:

  • 对仅对少数页面有意义的功能使用页面操作
  • 不要对大多数页面有意义的功能使用页面操作。改用浏览器操作

我的页面操作应该只显示在包含某个后缀的URL上,除非在某些域上永远不应该显示。我认为在这种情况下,页面操作比浏览器操作更好。无论如何,谢谢你的回答!我曾一度认为
urlMatches
会有所帮助,但不幸的是,负正则表达式可能不存在,因为RE2不支持负环视。所以,是的,忽略我的(删除的)评论。是的,我已经试过了,可能应该把它放在问题中。