我正在 angularjs 应用程序中探索 JavaScript es6 代码,并使用 grunt babel 将 es6 编译为 es5。
我的单元测试(jasmine)无法使用 phantomjs 与 es6 代码一起运行。
运行测试的最佳方式是什么?有没有什么插件可以让 jasmine 运行 es6 代码?
您可以将 Jasmine 配置为使用 Babel 作为助手并动态转换您的代码。
Install babel-register
module:
npm install --save-dev babel-register
并将其注册为Jasmine助手
In your spec/support/jasmine.json
文件进行以下更改:
{
"helpers": [
"../node_modules/babel-register/lib/node.js"
]
}
欲了解更多信息,请参阅piecioshka/test-jasmine-babelGithub 上的存储库。
Babel 6.x 不附带默认启用的任何转换。您需要明确告诉它要运行哪些转换。您已经在使用 Babel,因此应该安装这些模块。如果没有,您可以使用 npm 安装 ES2015 Preset:
npm install babel-preset-es2015 --save-dev
假设你已经安装了 Babel 和 ES2015 Preset,为了启用它,你必须在你的.babelrc
文件,像这样:
{
"presets": ["es2015"]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)