当前位置: 首页 > news >正文

vue-elementPlus自动按需导入和主题定制

elementPlus自动按需导入

装包 -> 配置

1. 装包(主包和两个插件包)

$ npm install element-plus --save
npm install -D unplugin-vue-components unplugin-auto-import

 2. 配置

vite.config.js文件中配置,配置完重启(npm run dev

// elementPlus按需导入
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
    //...elementPlus按需导入
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [
        ElementPlusResolver(),
      ],
    })

主题定制

装包sass -> 主题样式定制文件 -> 配置

1. 装包sass

npm i sass -D

(注:-D表示仅在开发环境中依赖)

2. 准备主题定制文件

置于 styles/element/index.scss 中(elementPlus要求的文件命名写法,文件通常由UI提供),定制不同的样式颜色

// 例如:
/* 只需要重写你需要的即可 */
@forward 'element-plus/theme-chalk/src/common/var.scss' with (
  $colors: (
    'primary': (
      // 主色
      'base': #27ba9b,
    ),
    'success': (
      // 成功色
      'base': #1dc779,
    ),
    'warning': (
      // 警告色
      'base': #ffb302,
    ),
    'danger': (
      // 危险色
      'base': #e26237,
    ),
    'error': (
      // 错误色
      'base': #cf4444,
    ),
  )
)

3. 配置-对原样式进行覆盖,代码在最后

  // 2. 自动导入定制化样式文件进行样式覆盖
  css:{
    preprocessorOptions: {
      scss: {
        additionalData: `
          @use "@/styles/element/index.scss" as *;
        `,
      }
    }
  },
    Components({
      resolvers: [
        // elementPlus主题定制:装包sass(开发环境-D) -> 配置
        // 1. 配置elementPlus采用sass样式配色系统
        ElementPlusResolver({importStyle: "sass"}),
      ],
    })

进行测试,验证成功与否。

参考:一个 Vue 3 UI 框架 | Element Plus (element-plus.org)

http://www.dtcms.com/a/1244.html

相关文章:

  • 【深度学习】 Python 和 NumPy 系列教程(一):Python基本数据类型:1、数字(整数、浮点数)及相关运算;2、布尔值
  • 将函数实现放到CPP报“无法解析的外部符号...”,系VS Bug
  • Flink从入门到精通之-05 DataStream API
  • 命名空间 namespace
  • 前端开发——Javascript的定义函数、事件处理、Math对象、Date对象
  • GPT-4老板:AI可能会杀死人类,已经出现我们无法解释的推理能力
  • CSS(三)
  • 华为nat配置实验:内网能够访问外网,内网服务器80端口映射出去
  • Linux使用:环境变量指南和CPU和GPU利用情况查看
  • 《C++那些事》Step By Step上手学习
  • CentOS8提高篇22:制作crontab计划任务,at一次性计划任务
  • Java云电子病历系统源码,提供电子病历在线制作、管理和使用的一体化电子病历
  • 【ansible】实施任务控制
  • 【愚人节专场】Java实现定时发送小情话
  • 基于SpringBoot实现CSGO游戏赛事管理系统演示【附项目源码】分享
  • 一个年薪40w软件测试员的职业规划,写给还在迷茫中的朋友
  • 使用Xarray解码GFS气象源文件和pip国内源
  • Beats:在 Docker 中同时部署 Metricbeat 和 Elasticsearch
  • 【数据仓库-7】-- 使用维度建模的一些缘由
  • node-fs
  • 无人机动力测试台-自动化测试系统拉力、扭矩、电压、电流、转速和效率
  • 国产机器人抢滩进行时!优艾智合引领智能制造浪潮
  • Autosar标准与其他标准的关系
  • 语音通知短信 API:一种新型的信息传递方式
  • 网络现代化势在必行,VMware 发布软件定义网络 SD-WAN 全新方案
  • Redis缓存穿透、击穿、雪崩问题及解决方法
  • 音乐制作:Ableton Live 11 Suite Mac
  • C++ 学习笔记(十)(继承、抽象篇)
  • xss labs(11-14)
  • STM32学习(四)