首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >类星体BEX不会捕捉由dom-钩子发出的背景钩子中的bridge.on('event')。

类星体BEX不会捕捉由dom-钩子发出的背景钩子中的bridge.on('event')。
EN

Stack Overflow用户
提问于 2020-11-27 14:25:48
回答 1查看 256关注 0票数 1

官方类星体文件之后,我在dom-hooks.js中发布我的事件

代码语言:javascript
复制
export default function attachDomHooks (bridge) {
  const clickHandler = (event) => {
    bridge.send('message.to.quasar', { target: event.target })
  }
  window.addEventListener('click', clickHandler, true)
}

然后我没能在background-hooks.js上捕捉到它

代码语言:javascript
复制
export default function attachBackgroundHooks (bridge) {
  bridge.on('message.to.quasar', event => {
    console.log('message.to.quasar', event.data)
    bridge.send(event.eventResponseKey)
  })
}

基本上,我需要将一些数据放入chrome.storage中,这些数据包含在后台钩子中,但需要从dom-hooks触发此操作。我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-10 13:07:34

您需要使用内容-hooks.js文件作为代理,将事件转发到后台脚本。多姆无法访问后台脚本--这是根据设计的.

因此,作为一个例子(未经测试):

dom-钩子:

代码语言:javascript
复制
export default function attachDomHooks (bridge) {
  bridge.send('message.to.quasar', { from: 'dom-hooks' })
}

内容-钩子:

代码语言:javascript
复制
export default function attachContentHooks (bridge) {
  bridge.on('message.to.quasar', event => {
    bridge.send('message.to.quasar.bg', event.data)
  })
}

背景-钩子:

代码语言:javascript
复制
export default function attachBackgroundHooks (bridge) {
  bridge.on('message.to.quasar.bg', event => {
    console.log(event)
  })
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65038979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档