我有一个问题,experimental electron notification API不提交'点击'事件,或者我只是使用它的错误,但我想明确的是,这是新的通知系统,运行在主进程中,而不是在渲染进程中:
我的代码:
notification = new Notification({title: "Message Received",body: "message body"}).show()
// The above works and a notification gets made
notification.on('click', (event, arg)=>{
console.log("clicked")
})
// The above gives an error about 'on' not being defined
字符串
尝试的东西:
notification.once('click', (event, arg)=>{
console.log("clicked")
})
notification.onclick = () =>{
console.log("clicked")
}
3条答案
按热度按时间hmmo2u0o1#
在你的代码中有一个小缺陷:现在,变量
notification
没有接收到对new Notification()
的调用的结果,而是接收到对show()
的调用的结果,即undefined
(什么也不返回)。通过将代码行拆分为两个语句,这是相当容易修复的:
字符串
hfyxw5xn2#
你需要在调用show方法之前处理click事件。下面的代码在我的Electron 10.1.1上工作(不确定在此停止工作之前你可以追溯到多远)
字符串
6gpjuf903#
我也遇到了这个问题,它磨损了很多神经.这个问题是Windows操作系统的问题.点击处理程序在开发模式下工作,但在prod中构建后不工作.但我找到了解决方案.也许它会对你有帮助.问题是你的appId之间缺少,所以通知和点击它没有与你的应用程序的连接.
如何解决这个问题:在你的
forge.config.js
中找到你的appBundleId或设置它:字符串
然后在main process中你应该写:
型
在那之后,你的通知点击列表将不仅在开发中工作,但在生产!我希望我的解决方案对你有用。