vue-基于elementui自定义主题更换皮肤及自定义内容的皮肤跟换

本文档详细介绍了如何在Vue项目中基于ElementUI自定义主题更换皮肤,包括为不同主题添加特定类名,一次性引入所有颜色文件,以及实现自定义内容的皮肤切换。重点在于通过修改CSS选择器并利用gulp-css-wrap工具批量添加类名,以及在Vue组件中动态切换皮肤。
摘要由CSDN通过智能技术生成

vue-基于elementui自定义主题更换皮肤及自定义内容的皮肤跟换

参考这篇博客https://blog.csdn.net/young_Emily/article/details/78591261做一遍,加上自己的一些理解

思路:通过自己上一篇博客https://www.cnblogs.com/aidixie/p/10309862.html做出多个不同的自定义主题,在不通的主体的css样式前加上不同的class名,在页面跟换不同肤色时,通过改变body上的calss来添加不同的样式。

一、elementui自定义主题更换皮肤

1.1、给不通的主题添加不同类名

  在src/assets/下创建theme文件夹,放入不同主题

  

  为不同主题中的index.css的每个选择器都前面加上class,例如在00ff22文件夹下的index.css下的每一选择前前面加上custom-00ff22类名(备注,00ff22文件夹有许多css文件,index.css应该包含其他css文件的全部样式。参考博客里没有相关的介绍,搞了好久才发现这个问题。)

  添加方法:gulp-css-wrap工具的使用——[批量为css文件扩展命名空间]

  

  其他主题都这样添加相应的类名。

1.2、app.vue里引入全部的颜色文件 

  在app.vue一次性全部引入各个主题

  

1.3、切换皮肤方法

  在src添加文件夹utils,再在里面添加index.js,里面是换肤函数

//换肤加class函数
export function toggleClass (element, className) {
    if (!element || !className) {
      return
    }
    element.className = className
}

  在theme.vue

<template>
  <div class="hello">
    <el-radio-group v-model="themeValue" @change='changeTheme'>
      <el-radio :label="'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值