当前位置: 首页 > Web前端 > vue.js

webpack编译vue风格”export'default'(importedas'mod')报错

时间:2023-03-31 14:32:51 vue.js

最近升级了脚手架编译层的代码,vue同学反馈编译风格有warning,记录问题及解决方法error../vueSample/js/index/_pages/app.vue?vue&type=style&index=0&lang=stylus&1:469-472中的消息警告“在‘-!../../../../../node_modules/mini-css....问题webpack配置{test:/\.styl(us)?$/,use:envAttributes('styl',['stylus-loader'])},//辅助方法函数envAttributes(param){return([{loader:MiniCssExtractPlugin.loader,options:{publicPath:domain,}},{loader:'css-loader',options:{importLoaders:2,url:false}},'postcss-loader',]).concat(param)}问题解决在网上反复查找,发现问题出在MiniCssExtractPlugin.loader。上次为了解决样式背景图片不输出的问题,修改了MiniCssExtractPlugin.loader的配置选项:{publicPath:domain,//domain域名指向开发服务,解决url图片定位问题在css}设置参数后,会导致vuestyle编译提示警告信息,后来通过MiniCssExtractPlugin的官方文档得知MiniCssExtractPlugin.esModule属性默认为true。而且webpack4也需要设置esModule为true来开启treeshaking功能,但是就是这个参数导致vue2在编译style的时候报错。修改参数配置选项:{publicPath:domain,//domain域名指向开发服务esModule:false,//设置该属性为false,问题解决}esModuleesModule为ESMODULE语法,支持编译时加载时间,这与CommonJS运行时加载不同。模块依赖性以及输入和输出变量可以在编译时确定。ESM可以做treeshaking。只能加载模块的部分内容源码