小编Far*_*our的帖子

点击Chrome展开的图标

我很难理解如何在点击chrome扩展图标时运行一些JS.我想例如,当点击图标时,从文档中读取一些属性.

"browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
},
"permissions": [
    "activeTab",
    "clipboardWrite"
]
Run Code Online (Sandbox Code Playgroud)

在popup.html中,我有以下内容:

chrome.browserAction.onClicked.addListener(function(tab) {
    alert('working?');
});
Run Code Online (Sandbox Code Playgroud)

但是,这似乎不起作用.我尝试在背景脚本(在manifest.json中)内部使用JS,但这也不起作用.

google-chrome-extension

8
推荐指数
1
解决办法
8106
查看次数

展平Promise地图

我很好奇你是如何在承诺数组的Promise地图中展平结果的.我有一个函数Promise.maps一组值,他们自己承诺(需要解决)并返回一个数组.所以,我得到了类似的东西:[[1,2,3],[1,2,3]等等.]之后我一直在使用lodash/underscore ._flatten,但是,我确定有一个清洁方法.

return Promise.map(list, function(item) {
  return new Promise(function(res, rej) {
    return res([1, 2, 3]);
  });
});
Run Code Online (Sandbox Code Playgroud)

promise bluebird

5
推荐指数
1
解决办法
3846
查看次数

如何使用后台脚本和类似于默认弹出窗口的东西?

所以,我知道你不能将后台脚本和默认弹出窗口放在一起.如果是这样,我怎么能有类似于默认弹出窗口(当你点击扩展名的图标时出现一些简单的HTML)并让后台脚本修改该弹出窗口的内容?

这是manifest.json

"browser_action": {
    "default_title": "Mark this position!",
    "default_icon": "icon.png"
},
"background": {
    "scripts": ["background.js"],
    "persistent": false
},
"content_scripts": [
    {
        "matches": [
            "http://*/*",
            "https://*/*"
        ],
        "js": ["content.js"]
    }
],
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome-extension

2
推荐指数
1
解决办法
523
查看次数