电子托盘应用程序:如何在气球单击事件的事件处理程序中引用目标气球?

时间:2018-07-29 17:30:38

标签: javascript electron

电子托盘应用程序可以使用 Tray.displayBalloon 方法显示气球,该方法采用具有 title content 和可选的 icon 属性。

据我所知,气球界面不包含click或onClick属性。 Tray 类的确有一个 balloon-click 事件,该事件会在单击气球以及单击 balloon-closed balloon时触发-show 事件。但是,传递给回调函数的 event 对象似乎未包含对调度该事件的气球的引用。 (显示,单击或关闭的气球)

tray.on('balloon-click', console.log)
tray.on('balloon-show', console.log)
tray.on('balloon-closed', console.log)

日志:

{ preventDefault: [Function: preventDefault],
  sender:
   Tray {
     _events:
      { 'balloon-click': [Function],
        'balloon-show': [Function: consoleLog] },
     _eventsCount: 2 } }

我的纸盘应用程序从其他来源发送气球通知。单击气球(导航至何处或打开哪个窗口)时会发生什么,具体取决于气球在说什么。

我需要引用被单击的气球,而不仅仅是某个地方在某个地方单击了气球。

我可以想到多种方法来实现解决方案,从简单的包装函数和 activeBalloon 变量到整个BalloonManager类,但我不想浪费时间,如果我只是忽略了这一点在Electron API文档中。

  

这个问题也在2017年8月的describe.atom.io上被问到了

来源:https://discuss.atom.io/t/tray-balloon-click-how-to-know-which-balloon-is-clicked/46744

0 个答案:

没有答案