我是Javascript和Electron的新手。
假设我有10对纽扣。每一对按钮由一个“开始”和一个“取消”按钮组成。每个“Start”按钮都可以调用一个相同的函数,该函数在单击时从另一个JS脚本导入。
因此,如果我按下了第一个和第三个“开始”按钮,同一个函数将被调用两次。
现在,我只想通过单击第三个“取消”按钮来终止由第三个“开始”按钮调用的函数。有没有办法解决这个问题?
下面是我写的一个简化代码:
const hi = require('helloworld.js')
ipcMain.on("runFunction", (event, data) => {
hi()
});
ipcMain.on("killFunction", (event, data) => {
// What I should write here
});

发布于 2021-07-26 15:30:13
要让ipc.on正常工作,您应该在单击按钮时实际发送一个事件(根据您的代码,特别是runFunction事件)。因此这将触发事件,并且ipcMain.on()将在事件被触发时工作。
现在你可以使用ipc.send()在发送event.so的时候传递数据了,在这里你可以传递start按钮的索引,并使用这个索引来杀死它。
示例:ipcRenderer.send('asynchronous-message', 'ping')
有关代码示例https://www.electronjs.org/docs/api/ipc-main,请参阅此文档
https://stackoverflow.com/questions/68525826
复制相似问题