gpt4 book ai didi

npm - 使用 Babel 7 运行 Mocha 6 ES6 测试,如何设置?

转载 作者:行者123 更新时间:2023-12-03 18:31:39 25 4
gpt4 key购买 nike

对于用 ES6/7 编写的库,我想将库编译(到 ES5)到 dist/文件夹。我也想为该库运行测试(用ES6/7编写)。

我的开发依赖项如下所示(package.json):

"devDependencies": {
"@babel/cli": "^7.4.4",
"@babel/core": "^7.4.5",
"@babel/preset-env": "^7.4.5",
"@babel/register": "^7.4.4",
"chai": "^4.2.0",
"mocha": "^6.1.4",
"sinon": "^7.3.2"
},

我的构建和测试脚本如下所示 (package.json):
"scripts": {
"test": "mocha --require @babel/register",
"build": "babel src -d dist --presets=@babel/preset-env"
},

运行 npm run build 效果很好。 dist/文件夹中填充了转换后的文件。

运行 npm run test 似乎不起作用 - 这是我的问题。
> mocha --require @babel/register

/Users/dro/Repos/lib/node_modules/yargs/yargs.js:1163
else throw err
^

ReferenceError: regeneratorRuntime is not defined

最初我遇到了一个导入错误,通过添加 .babelrc 文件解决了这个错误。

下面是我的 .babelrc 文件内容。
{
"presets": ["@babel/preset-env"]
}

我正在阅读有关 regeneratorRuntime 的信息,它让我找到了 this link about babel-polyfill,他们解释说我不需要那个 polyfill。

This will emulate a full ES2015+ environment (no < Stage 4 proposals) and is intended to be used in an application rather than a library/tool.



正确设置需要什么?

我没有使用 webpack。

最佳答案

在 ES6 中使用 Mocha 和 Babel 7 进行测试。看这里:https://dev.to/bnorbertjs/my-nodejs-setup-mocha--chai-babel7-es6-43eihttp://jamesknelson.com/testing-in-es6-with-mocha-and-babel-6/

npm install --save @babel/runtime 
npm install --save-dev @babel/plugin-transform-runtime

并且,在 .babelrc 中,添加:
{
"presets": ["@babel/preset-env"],
"plugins": [
["@babel/transform-runtime"]
]
}

关于npm - 使用 Babel 7 运行 Mocha 6 ES6 测试,如何设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56682958/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com