我需要公共脚本来支持许多浏览器,而管理面板脚本只支持最新的chrome。我想通过根据条目使用不同的浏览器设置来实现。
babel
支持每个目录的多个配置(递归地找到
巴别塔
配置文件高达
package.json
找到:
babel通过
从“文件名”开始搜索目录结构
正在编译(受以下警告限制)。这可能很强大
因为它允许您为
包的子部分。
资料来源:
babel
docs
目前您已将
巴别塔
在项目范围内应用的网页包配置中的配置。你能做的就是把
巴别塔
从你的网页包配置,放置你的
adminPanel.js
和
public.js
在各自的目录中
.babelrc
(或其他babel配置)具有不同目标的文件
@babel/presets-env
是的。
.
âââ src
| âââ admin
| | âââ adminPanel.js
| | âââ .babelrc
| |
| âââ public
| | âââ public.js
| | âââ .babelrc
|
âââ package.json
你的
./src/admin/.babelrc
可能看起来像:
{
"presets": [["@babel/preset-env", {
"targets": "chrome 70"
}]]
}
还有你的
./src/public/.babelrc
以下内容:
{
"presets": [["@babel/preset-env", {
"targets": "last 5 years"
}]]
}
我刚刚用下面两个代码尝试过
./src/admin/adminPanel.js
和
./src/public/public.js
[1, 2, 3].map(num => `number ${num}`)
let [x, y, z] = [2, 4, 6]
哪个
webpack
和
巴别塔
已经转变成
// ./dist/admin.js
[1, 2, 3].map(num => `number ${num}`);
let [x, y, z] = [2, 4, 6];
和
// ./dist/public.js
[1, 2, 3].map(function (num) {
return "number ".concat(num);
});
var x = 2,
y = 4,
z = 6;
希望有帮助。