有关如何在WebStorm 10上使用ES6的任何想法?
这是我到目前为止所做的:
然后创建了以下一些简单的代码:
require("babel/register");
function* count(n){
console.log(n);
}
此代码显示没有语法错误,应该如此。 (确保打开ES6的便捷方法)。
运行它(实际上运行已编译的版本),并获得此....
var marked0$0 = [count].map(regeneratorRuntime.mark);
^
ReferenceError: regeneratorRuntime is not defined
为什么呢?如何让它与Babel预编译然后运行?是不是应该用这条线来处理再生器:
require("babel/register");
(Windows 7,如果这很重要)。
答案 0 :(得分:2)
Babel的require hook要求您拥有BABEL_CACHE_PATH环境变量。您可能还需要在WebStorm的File Watcher配置中指定它们。
答案 1 :(得分:1)
"需要钩子"仅适用于注册后需要的文件,但不适用于注册钩子本身的文件。
这样可行:
// index.js
require('babel/register');
require('./count');
// count.js
function* count(n){
console.log(n);
};
答案 2 :(得分:1)
我认为根据您所描述的错误的性质,您可能需要做两件事才能让它发挥作用。
npm install babel-core
--optional runtime
作为调用babel的参数这是基于详细描述的内容here。