【问题标题】:Node can't enable harmony features节点无法启用和谐功能
【发布时间】:2014-05-05 14:10:03
【问题描述】:

尝试在我的本地节点环境中运行这些新功能,如 http://h3manth.com/new/blog/2013/es6-on-nodejs/ 所示,特别是 Generators。当我在 0.11.4 之前的任何 Node 版本上运行 node --harmony --use-strict es6.js 时,任何原因都会出现错误

function *Counter() {
     ^
SyntaxError: Unexpected token *
etc...

它适用于 0.11.4 及之后的任何版本,但是当在那里添加 --debug-brk 语句时,我得到

global.v8debug.Debug.setBreakPoint(compiledWrapper, 0, 0);
                       ^
ReferenceError: break_point is not defined

不知道为什么它给了我启用和谐的选项,但在以前的版本中没有使用它,为什么我不能调试更高的版本?

【问题讨论】:

  • 不要使用--use-strict 选项。如果您使用的是 3rd 方模块,那么您会无缘无故地对它们强制执行严格模式。如果你想使用严格模式,你必须在文件的开头指定它。
  • 在他们的 github 问题跟踪器上有一个问题,但还没有回复 github.com/joyent/node/issues/7363#issuecomment-43405861

标签: node.js ecmascript-harmony ecmascript-6


【解决方案1】:

--harmony-generators 已添加到 Node v0.11 中,这肯定是您的代码无法解析的原因。

使用--use-strict 中断调试是一个问题,因为现在刚刚修复的是node v0.12 development branch

如果您想从最新源构建自己的节点版本,您应该能够调试您的生成器!

来源:https://github.com/joyent/node/issues/8685

【讨论】:

    猜你喜欢
    • 2019-06-04
    • 2022-08-03
    • 2020-06-23
    • 2016-03-15
    • 2015-10-22
    • 2018-02-22
    • 2019-05-13
    • 2022-06-16
    • 2014-10-31
    相关资源
    最近更新 更多