Isa*_*aac 9 javascript webpack babeljs
网站上询问的大多数问题是如何排除,node_modules但我想知道为什么要排除node_modules?
module.exports = {
mode: 'production',
entry: './src/index.js',
output: {
path: path.join(__dirname, 'dist'),
filename: 'app.bundle.js'
},
module: {
rules: [
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
options: {
presets: ['@babel/preset-env']
}
}
]
}
};
Run Code Online (Sandbox Code Playgroud)
有人可以向我解释排除在外的原因node_modules吗?
简而言之,转译是一个昂贵的过程,许多项目中有成千上万(如果不是成千上万)的代码行导入该Babel,则需要重新运行。如前所述,您的node_modules应该已经可以运行而无需进行编译,并且有一些简单的方法可以排除您的node_modules但可以编译需要它的任何代码。参见https://github.com/babel/babel-loader/issues/171。
关于是否应该由开发人员来承担编译库的应用程序工作还是由库开发人员负责,我已经看到了很多争论。大部分时间都是为了获得浏览器支持而进行转译,并且库创建者不知道您需要支持哪些浏览器,因此它们最终要么转译要么不转译,从而将其交给您。如果它们可以移植到ES5,那么您就算是黄金,如果不是这样,通常这很简单,就能找出导致问题的库并自己移植
| 归档时间: |
|
| 查看次数: |
2219 次 |
| 最近记录: |