如何在chrome extension中运行外部输入的js代码?
网友解答: 将页面放进砂箱manifest.json { "manifest_version": 2, "sandbox": { "pages": [ "index.
将页面放进砂箱
manifest.json {
"manifest_version": 2,
"sandbox": { "pages": [ "index.html" ] }
}
这样在index.html里面是可以eval的。
但是在index.html内是无法调用extension api的,这时可以用window.postMessage向砂箱外部传递消息,然后在外部监听消息,再调用api
箱内
window.parent.postMessage command: "close"
箱外
window.addEventListener 'message', (e)- switch e.data?.command when "close" then chrome.app.window.current().close()