Vue3集成Element Plus完整指南:从安装到主题定制上

打印 上一主题 下一主题

主题 1633|帖子 1633|积分 4899

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一、Element Plus简介

Element Plus是一套基于Vue 3.0的桌面端组件库,由饿了么前端团队开源维护。它提供了丰富的UI组件,能够帮助开发者快速构建企业级中后台产品。
1. 安装与卸载

bash
复制
下载
  1. # 安装最新版本
  2. npm install element-plus -S
  3. # 卸载
  4. npm uninstall element-plus
复制代码
官方文档地址:Element Plus官网
2. 底子集成配置

在Vue项目标main.js中举行根本配置:
javascript
复制
下载
  1. import ElementPlus from 'element-plus'
  2. import 'element-plus/dist/index.css'
  3. import zhCn from 'element-plus/dist/locale/zh-cn.mjs' // 中文语言包
  4. const app = createApp(App)
  5. // 使用Element Plus
  6. app.use(ElementPlus, {
  7.     locale: zhCn, // 设置中文
  8. })
复制代码
3. 图标体系集成

Element Plus使用独立的图标库,需要单独安装:
bash
复制
下载
  1. npm install @element-plus/icons-vue
复制代码
在main.js中全局注册图标组件:
javascript
复制
下载
  1. import * as ElementPlusIconsVue from '@element-plus/icons-vue'
  2. // 全局注册所有图标
  3. for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  4.     app.component(key, component)
  5. }
复制代码
使用示例:
html
复制
下载
运行
  1. <div style="padding: 50px;">
  2.   <el-icon size="25" color="red">
  3.     <Service />
  4.   </el-icon>
  5. </div>
复制代码
4. 组件中使用图标

在Vue单文件组件中:
html
复制
下载
运行
  1. <script setup>
  2. import { Service } from "@element-plus/icons-vue"
  3. </script>
  4. <template>
  5.   <!-- 输入框后缀图标 -->
  6.   <el-input :suffix-icon="Service" style="width: 100px;"></el-input>
  7.   
  8.   <!-- 输入框前缀图标 -->
  9.   <el-input :prefix-icon="Service" style="width: 100px;"></el-input>
  10.   
  11.   <!-- 按钮图标 -->
  12.   <el-button type="primary" icon="Service"></el-button>
  13. </template>
复制代码
  注意:<script setup>是Vue 3的组合式API语法糖,简化了组件编写。
  二、Element Plus主题定制

Element Plus支持通过Sass变量轻松定制主题样式。
1. 安装须要依赖

bash
复制
下载
  1. npm install -D sass sass-embedded unplugin-vue-components unplugin-auto-import
复制代码
2. 创建样式变量文件

在src/css_image_assets/目次下创建index.scss文件:
scss
复制
下载
  1. @forward 'element-plus/theme-chalk/src/common/var.scss' with (
  2.   $colors: (
  3.     'primary': ("base": #2c82ff),
  4.     'success': ("base": #31bf00),
  5.     'warning': ("base": #ffad00),
  6.     'danger': ("base": #e52f2f),
  7.     'info': ("base": #8055ff),
  8.   )
  9. );
复制代码
3. 配置Vite

修改vite.config.js:
javascript
复制
下载
  1. import { fileURLToPath, URL } from 'node:url'
  2. import { defineConfig } from 'vite'
  3. import vue from '@vitejs/plugin-vue'
  4. import vueDevTools from 'vite-plugin-vue-devtools'
  5. // 自动导入插件
  6. import AutoImport from 'unplugin-auto-import/vite'
  7. import Components from 'unplugin-vue-components/vite'
  8. import { ElementPlusResolver } from "unplugin-vue-components/resolvers"
  9. export default defineConfig({
  10.   plugins: [
  11.     vue(),
  12.     vueDevTools(),
  13.     AutoImport({
  14.       resolvers: [ElementPlusResolver()],
  15.     }),
  16.     Components({
  17.       resolvers: [ElementPlusResolver({ importStyle: "sass" })]
  18.     })
  19.   ],
  20.   css: {
  21.     preprocessorOptions: {
  22.       scss: {
  23.         additionalData: `@use "@/css_image_assets/index.scss" as *;`,
  24.       },
  25.     },
  26.   },
  27.   resolve: {
  28.     alias: {
  29.       '@': fileURLToPath(new URL('./src', import.meta.url))
  30.     },
  31.   },
  32. })
复制代码
4. 主题定制原理

通过上述配置,我们实现了:

  • 自动导入Element Plus组件,无需手动import
  • 使用Sass变量覆盖默认主题色
  • 构建时自动应用自定义样式
主要颜色变量说明:


  • primary: 主要品牌色
  • success: 乐成状态色
  • warning: 警告状态色
  • danger: 危险状态色
  • info: 信息提示色
三、总结

本文详细先容了如安在Vue 3项目中集成Element Plus组件库,包括:


  • 底子安装与配置
  • 图标体系的使用
  • 主题颜色的深度定制
通过主题定制功能,开发者可以轻松实现品牌风格的统一,快速构建符合企业视觉规范的应用步伐。Element Plus丰富的组件和良好的可定制性,使其成为Vue 3生态中最受接待的UI库之一。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

卖不甜枣

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表