• Vue antdv 定制主题配置(高低版本配置问题)


    一、简介

    • 在使用 ant-design-vue 时,需要修改一下全局的主题颜色,按照官方的配置流程配置失败,应该是版本问题。

    二、安装 antdv

    • 安装 ant-design-vue

    • $ npm i --save ant-design-vue
    • main.js 中配置,完整引入
      import Vue from 'vue'
      import App from './App.vue'
      import router from './router'
      import store from './store'
      
      // 引入 antdv
      import Antd from 'ant-design-vue';
      // 这里引入的是 css 文件,后面需要自定义主题的话,需要换成 less 文件
      import 'ant-design-vue/dist/antd.css';
      // import 'ant-design-vue/dist/antd.less';
      
      Vue.config.productionTip = false
      
      // 注册 antdv
      Vue.use(Antd);
      
      new Vue({
        router,
        store,
        render: h => h(App)
      }).$mount('#app')
    • 使用按钮,这是默认样式
      <template>
        <!-- 使用按钮 -->
        <a-button type="primary">Primary</a-button>
      </template>

      三、自定义主题样式

      • antdv 的样式使用了 Less 作为开发语言,所以需要安装 Less 环境。

      • 参考 - 官方自定义主题文档

      • 参考 - 所有样式变量

      • 参考 - 以下是一些最常用的通用变量

        @primary-color: #1890ff; // 全局主色
        @link-color: #1890ff; // 链接色
        @success-color: #52c41a; // 成功色
        @warning-color: #faad14; // 警告色
        @error-color: #f5222d; // 错误色
        @font-size-base: 14px; // 主字号
        @heading-color: rgba(0, 0, 0, 0.85); // 标题色
        @text-color: rgba(0, 0, 0, 0.65); // 主文本色
        @text-color-secondary: rgba(0, 0, 0, 0.45); // 次文本色
        @disabled-color: rgba(0, 0, 0, 0.25); // 失效色
        @border-radius-base: 4px; // 组件/浮层圆角
        @border-color-base: #d9d9d9; // 边框色
        @box-shadow-base: 0 2px 8px rgba(0, 0, 0, 0.15); // 浮层阴影

      • 创建 vue.config.js,加入下面配置,注意查看一下 package.json 中 less-loader 版本,根据版本选择对应的配置:
        // less-loader >= 6.0.0 (例如 less-loader@6.0.0)
        module.exports = {
          css: {
            loaderOptions: {
              less: {
                lessOptions: {
                  // If you are using less-loader@5 please spread the lessOptions to options directly
                  modifyVars: {
                    // 这里就是样式变量的名称以及对应的值,可以按照上面提供的官方文档进行配置
                    'primary-color': '#41B883',
                    'link-color': '#41B883',
                    'border-radius-base': '2px'
                  },
                  javascriptEnabled: true
                }
              }
            }
          }
        }
        
        // less-loader < 6.0.0 (例如 less-loader@5.0.0)
        module.exports = {
          css: {
            loaderOptions: {
              less: {
                // If you are using less-loader@5 please spread the lessOptions to options directly
                modifyVars: {
                  // 这里就是样式变量的名称以及对应的值,可以按照上面提供的官方文档进行配置
                  'primary-color': '#41B883',
                  'link-color': '#41B883',
                  'border-radius-base': '2px'
                },
                javascriptEnabled: true
              }
            }
          }
        }
      • main.js 中配置,css 文件调整为 less 文件
        import Vue from 'vue'
        import App from './App.vue'
        import router from './router'
        import store from './store'
        
        // 引入 antdv
        import Antd from 'ant-design-vue';
        // 这里引入的是 css 文件,后面需要自定义主题的话,需要换成 less 文件
        // import 'ant-design-vue/dist/antd.css';
        import 'ant-design-vue/dist/antd.less';
        
        Vue.config.productionTip = false
        
        // 注册 antdv
        Vue.use(Antd);
        
        new Vue({
          router,
          store,
          render: h => h(App)
        }).$mount('#app')
      • 重新运行项目,查看效果

  • 相关阅读:
    只需 4 步,手把手教你如何实现滤镜功能
    paip.提升用户体验---c++ qt自定义窗体(1)---标题栏的绘制
    socket网络编程的一些基础知识
    图像处理、模式识别、模式分类、机器视觉推荐图书
    数据挖掘、机器学习和模式识别关系与区别
    Qt4_VS10 程序打包发布
    Qt之多线程
    QT中.pro文件的写法
    高斯定理的证明
    《Linear Algebra and Its Applications》-chaper3-行列式-行列式初等变换
  • 原文地址:https://www.cnblogs.com/xiadongqing/p/15341520.html
Copyright © 2020-2023  润新知