一、 错误及问题分析
在项目中引入iview,编写自定义主题文件theme.less,按照官网模板在theme.less中引入index.less,然后在main.js中import theme.less,自信满满的点击运行,what???什么鬼?.bezierEasingMixin()报错,oh my god!各种查询最后确定是less版本不一致导致的问题!天呐,版本更新不是应该兼容旧版方法么,为啥子不兼容~~~,不说这些了,解决问题才是关键!
二、问题解决
- 前提
我用的是vue-cli3,用vue-cli2的在百度一下吧。坚决抵制旧版本,时代在进步,技术在前进,还用旧版干嘛~~~ - 解决
1) 既然版本不一致,第一种当然是吧版本替换成旧版的了就行了
看到没,我们安装的是3.x.x版本,官方的是2.x.x的版本,那就改回去重新npm install一下就好了,当然我没试哈~如果不行,先npm uninstall less卸载后在安装。和我一样喜欢用新版本的看下面~
2)修改webpack兼容旧版
只需要在你的vue.config.js中加上这么一句配置即可解决,是不是很方便~module.exports = { ... css: { loaderOptions: { // 向 CSS 相关的 loader 传递选项 less: { javascriptEnabled: true } } } ... }