Javascript 节点v11使用spread操作符抛出
我正在尝试构建一个电子应用程序,我正在使用 但当运行我的应用程序时,它会抛出Javascript 节点v11使用spread操作符抛出,javascript,node.js,electron,Javascript,Node.js,Electron,我正在尝试构建一个电子应用程序,我正在使用 但当运行我的应用程序时,它会抛出 App threw an error during load C:\CLC\VIDA\Web\Comun\ypalma\todoapp\node_modules\electron-unhandled\index.js:74 ...options, ^^^ SyntaxError: Unexpected token ... at Object.exp
App threw an error during load C:\CLC\VIDA\Web\Comun\ypalma\todoapp\node_modules\electron-unhandled\index.js:74
...options,
^^^ SyntaxError: Unexpected token ...
at Object.exports.runInThisContext (vm.js:76:16)
at Module._compile (module.js:528:28)
at Object.Module._extensions..js (module.js:565:10)
at Module.load (module.js:473:32)
at tryModuleLoad (module.js:432:12)
at Function.Module._load (module.js:424:3)
at Module.require (module.js:483:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (C:\CLC\VIDA\Web\Comun\ypalma\todoapp\index.js:3:19)
at Module._compile (module.js:556:32)
现在,奇怪的是,我使用的是支持spread操作符的节点v11.5.0,所以我坚持使用它。所以,问题是,我如何在不编译到es5的情况下实现这一点?我的意思是,node应该处理这个语法,对吗
如果有帮助,我的electron版本是v5.0.1,我正在使用windows 10。因此,在@T.J.Crowder建议之后,我发现我的electron应用程序运行的是不同版本的node和electron。安装的electron版本是
^5.0.1
,但问题是我还安装了electron预构建
,它有节点版本6.0.5
和electron版本1.4.13
。
所以这个模块覆盖了我的节点和电子版本。只需卸载它并重新安装electron就可以了。节点v11(甚至是v11.0.0)支持
…
的所有含义。因此,如果您确实在使用节点v11,并且它给您一个指向..
的语法错误,那么..
就是一个语法错误。不过,听起来您可能没有使用节点v11。查看您的非现场链接第74行(问题不应依赖于非现场链接),这是有效的财产传播(ES2018+)。@t.J.Crowder这也是我所想的,但在github页面的源代码中,我觉得它还可以。同样有趣的是,这是该模块中的第一个扩展语法。@Pointy-是的,我刚刚编辑了那个注释。如果他们在代码中出现错误,他们就不会使用节点v11。我使用的是节点11,我没有版本管理器,所以这是我唯一安装的节点版本。我知道spread操作符从v8.x.x开始就得到了支持,这就是为什么我认为它是weird@T.J.Crowder在运行时检查流程版本号之后,我得到了以下v8 5.3.332.47;节点6.5.0;电子1.4.13。因此,出于某种原因,它在运行时运行的版本与我安装的版本完全不同。所以不知道发生了什么。
options = {
...options,
...inputOptions
};