我尝试编写以下代码,但它似乎没有响应或者我错过了一些东西:
main.js - 主要插件代码
panel.port.on("request", function(){
panel.port.emit("yes");
}
panel.js - 内容脚本
self.port.emit("request");
self.port.on("yes", function(){ window.alert("yes"); });
进行此类通讯是否合法?如果是,为什么它不起作用?
由于
艾登
答案 0 :(得分:1)
是的,这是允许的。 the official documentation中甚至有使用此方案的例子。
如果是,为什么它不起作用?
您的订单有误。您只有在调用self.port.on("yes", ...)
后才会调用panel.port.emit("yes", ...)
。切换两个内容脚本行,东西应该可以工作。