問題
按照iview文檔設置vue design/iview的全局主題的時候,出現了下面的報錯,導致項目無法啓動
Failed to compile
./src/Home/less/antMotionStyle.less (./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-7-1!./node_modules/postcss-loader/src??postcss!./node_modules/less-loader/dist/cjs.js??ref--6-oneOf-7-3!./src/Home/less/antMotionStyle.less)
ValidationError: Invalid options object. Less Loader has been initialized using an options object that does not match the API schema.
options has an unknown property 'source'. These properties are valid:
object { lessOptions?, prependData?, appendData?, sourceMap? }
This error occurred during the build time and cannot be dismissed.
解決
方案一:
將package.json裏的less-loader版本換成^5.0.0,然後刪除node_module再重新npm install即可
原因:
後來發現我的less-lodaer版本6.1.3,而公司之前的項目裏的less-loader是5.0.0版本,當我把版本降級之後,意外地成功了,後來查閱相關資料後,發現其實6+版本的兼容性還有問題。
方案二:
修改vue.config.js配置
https://juejin.im/post/5ec040b4e51d454da515dee9
{
loader: "less-loader",
options: {
lessOptions: {
javascriptEnabled: true
}
}
}