Javascript 为什么处理函数在electron/node.js中只能匿名工作?
为什么可以在node(electron)中写入这样的内容:Javascript 为什么处理函数在electron/node.js中只能匿名工作?,javascript,node.js,electron,Javascript,Node.js,Electron,为什么可以在node(electron)中写入这样的内容: app.on('ready', function() { mainWindow = new BrowserWindow({ width: 800, height: 480 }); }); 但这是一个错误,应用程序未就绪 app.on('ready', onReady()); function onReady() { mainWindow = new BrowserWindow(
app.on('ready', function() {
mainWindow = new BrowserWindow({
width: 800,
height: 480
});
});
但这是一个错误,应用程序未就绪
app.on('ready', onReady());
function onReady() {
mainWindow = new BrowserWindow({
width: 800,
height: 480
});
}
这是因为您混淆了函数引用和函数调用 请注意,函数
onReady
不返回任何内容。默认情况下,这意味着它返回undefined
这样做:
app.on('ready', onReady());
因此:
app.on('ready', undefined);
也就是说,调用onReady
函数,并将其结果传递给app.on()
基本上你所做的是:
app.on('ready', (function() {
mainWindow = new BrowserWindow({
width: 800,
height: 480
});
})());
你想要的是:
app.on('ready', onReady);
这可能是错误的,但我认为您只需要删除函数调用<代码>app.on('ready',onReady)这是一个明显的重复。(不是我的dv)这是对这个问题的一个很好的解释。