【发布时间】:2020-05-28 22:56:53
【问题描述】:
使用 Vue CLI 4 创建的 VueJS 项目,您可以在 babel.config.js 中使用这个方便的预设配置 Babel:
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset',
],
};
我正在尝试使用 babel-plugin-transform-remove-console 从构建的 JS 文件中删除 console.*。
通过npm i -D babel-plugin-transform-remove-console将插件安装为开发依赖项
然后修改babel.config.js:
module.exports = (api) => {
var env = api.cache(() => process.env.NODE_ENV);
var plugins = [];
// Change to 'production' when configs are working
if (env === 'development') {
plugins.push(['transform-remove-console', { exclude: ['error', 'warn'] }]);
}
return {
presets: ['@vue/cli-plugin-babel/preset'],
// plugins,
// Doesn't work even when always on?
plugins: ['transform-remove-console'],
};
};
这应该可以通过运行npm run serve -- --reset-cache 来工作,而且我也尝试在不同的环境中多次构建应用程序,但是控制台日志仍然显示在浏览器的控制台中?
Vue CLI 的预设是否因无法通过此配置文件设置插件而以某种方式混淆?
更新:创建了a bug report to Vue CLI repo,并在创建最小的错误重现存储库时,我发现这个插件正在与一个新项目合作。
但是,我不知道是什么原因造成的,因为我已将此应用程序与最新的 CLI 引导模板同步,并且还尝试通过 `npm cache clean --force.
【问题讨论】:
-
缓存是一回事,node_modules 是另一回事。在 Windows 上,我曾经遇到过类似的问题,我不得不手动删除 node_modules 和 AppData/local/temp 的内容,然后重新安装模块——也许这也能解决你的问题。
标签: javascript vue.js webpack babeljs vue-cli