完整错误信息回顾:
魏永强 [email protected] 2018-10-28原创
错误分析
从以上的错误信息我们可以得出错误的关键点:错误信息中我们可以看到错误是在less中的mixin部分编译中出现的。
这部分可能不是非常明确那么在看下边的错误提醒Inline JavaScript is not enabled. Is it set in your options?
。其实如果使用less比较熟悉可以知道less的mixin实现。这儿其实是antd-mobile包中的inputitem的less样式其中使用了带参mixin。那么使用了mixin在less-loader
中需要配置javascriptEnabled: true
。
解决方案
如果使用webpack
如果使用的webpack那就在webpack的配置中找到less的配置,在选项中添加javascriptEnabled: true
如果使用create-react-app脚手架的项目
使用create-react-app的项目我们是没有办法直接修改webpack.config.js要么你使用eject
‘弹射’但是不建议这么做。我们使用的另一个方案就是 react-app-rewired
。
使用react-app-rewired
需要在config-overrides.js
中添加less的配置。添加less配置你可以引入react-app-rewire-less
,在config中加入javascriptEnabled: true