- 项目中有需求:项目整体显示某个特定的颜色
- 使用 vue + iview
- 按照iview官网显示有两种方法,目前说第一种变量覆盖
- 按照官网的方法
如果你的项目使用了 webpack 工程,可以通过变量覆盖的方式来实现主题定制。
首先在项目中先建一个目录,比如 my-theme,然后在 my-theme 下建立一个 less 文件 index.less,并写入下面内容:
@import '~iview/src/styles/index.less';
// Here are the variables to cover, such as:
@primary-color: #8c0776;
5.然后在入口文件 main.js 内导入这个 less 文件即可:
import Vue from 'vue';
import iView from 'iview';
import '../my-theme/index.less';
Vue.use(iView);
写完之后我开始运行,然儿报错了
问题报错是模块解析失败,于是找度娘,显示是less的问题,less装的是3.0以上的,度娘说需要3.0以下的,于是安装2.7.3版本,发现还是不行,emmm…虽然好多说都可以,但是我这边还是不行,于是在找,发现vue.config.js中需要配置less
module.exports = {
css: {
// extract: true, // 是否使用css分离插件 ExtractTextPlugin
// sourceMap: false, // 开启 CSS source maps?
loaderOptions: {
less: {
javascriptEnabled: true //less 配置
}
}, // css预设器配置项
modules: false // 启用 CSS modules for all css / pre-processor files.
}
}
终于这次运行可以了
记录问题并解决问题,如果对你有帮助记得点个赞哟!!!