因此,使用ES6扩展运算符来获取此JS代码:
const a = { foo: 'bar' }
const b = { ...a }
console.log(b)
如果我用Babel编译它,如:
./node_modules/.bin/babel temp.js --presets stage-0
一切都应该如此。但是说我想从babel节点REPL运行它,从它开始:
./node_modules/.bin/babel-node --presets stage-0
然后在提示符处输入上面的代码,在点击运算符行const b = { ...a }
上输入后,我得到:
SyntaxError: repl: Modules aren't supported in the REPL (This is an error on an internal node. Probably an internal error)
为什么呢? : - )
答案 0 :(得分:0)
啊哈。所以问题似乎是虽然stage-0
会很好地编译传播语法,但我的transform-runtime
文件中有.babelrc
插件。这会导致编译器输出涉及require
语句(对于在这种情况下处理传播的效用函数),这就是错误的含义。
现在的问题是......如何在CLI中禁用babel插件?当我想暂时运行babel-node
时,只需评论该行。