vue使用element-ui 实现多套自定义主题快速切换

这篇具有很好参考价值的文章主要介绍了vue使用element-ui 实现多套自定义主题快速切换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、引入element-ui主题文件

在element-ui官网编辑好自己需要的主题样式

elementui主题切换,vue.js,javascript,elementui,gulp

下载到本地项目文件

vue项目目录可以参考我的本地目录位置:

elementui主题切换,vue.js,javascript,elementui,gulp

二、main.js 按需引入所有主题样式

import '@/assets/theme/blue/index.css'
import '@/assets/theme/white/index.css'
import '@/assets/theme/black/index.css'

三、在项目根目录创建文件gulpfile.js

文件代码:
var path = require('path')
var gulp = require('gulp')
var cleanCSS = require('gulp-clean-css')
var cssWrap = require('gulp-css-wrap')
var merge = require('merge-stream');
 
// 名为themeTask的任务
gulp.task('themetask', function () {
  //主题1
  var blue = gulp.src(path.resolve('./src/assets/theme/blue/index.css')) // 需要添加类名的css文件,支持正则表达式
    .pipe(cssWrap({ selector: '.theme-blue' })) // 添加的类名
    .pipe(cleanCSS())
    .pipe(gulp.dest('./src/assets/theme/blue'));// 生成的css文件存放的目录
 
  //主题2
  var white = gulp.src(path.resolve('./src/assets/theme/white/index.css'))
    .pipe(cssWrap({ selector: '.theme-white' }))
    .pipe(cleanCSS())
    .pipe(gulp.dest('./src/assets/theme/white'));

  //主题3
  var black = gulp.src(path.resolve('./src/assets/theme/black/index.css'))
    .pipe(cssWrap({ selector: '.theme-black' }))
    .pipe(cleanCSS())
    .pipe(gulp.dest('./src/assets/theme/black'));
    
  return merge(blue, white, black);
})

配置所需主题样式文件和className,例如上面代码:theme-black、theme-blue…

四、安装gulp相关依赖工具

cnpm install --global gulp-cli
cnpm i gulp gulp-clean-css gulp-css-wrap gulp merge-stream -D

五、执行gulp

在根目录执行以下命令:文章来源地址https://www.toymoban.com/news/detail-515799.html

gulp themetask

六、执行切换效果

changeTheme(value) {
   sessionStorage.setItem('theme', value)
   document.getElementsByTagName("body")[0].className = value;//改成相应类名
},

到了这里,关于vue使用element-ui 实现多套自定义主题快速切换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vue使用Element-UI实现分页效果

    分页在展示数据列表的场景肯定是非常多的。 一般的项目开发中,数据量特别大,一般都是后端接口直接处理分页返回,前端直接调用即可。 但是前端也是可以不需要借助后端,自己也是可以处理分页的。今天我这个后端开发就站在前端的角度上,处理列表分页。 友情提示

    2024年02月02日
    浏览(44)
  • vue使用element-ui实现分页功能

    element-ui官网上有分页实现的功能,简单方便又好用,也有很多分页的样式,你可以根据需要去选择自己想要的样式。这里讲的是完整功能样式的一个分页实现。过程如下: 分页方法完成。

    2024年02月13日
    浏览(42)
  • 【vue组件】使用element-ui 实现三级联动下拉选择

    实现的思路是第一个下拉选择在选择了选项后将该选项的信息传递到接口请求下一个选项的内容,依次类推 然后在清除了上一级选择的选项后要将其次级和子孙级的选项都清除(包括选择里的列表内容) 下面看具体代码: 效果图:

    2024年02月11日
    浏览(59)
  • vue-i18n国际化多语言与多套UI组件库使用(Element Plus、Ant Design Vue、Naive UI)

    demo源码:Vue3 UI Lang 因调研需要,需在同一个项目中集成好几种UI组件库的多语言实现,查看各种组件库的表现情况,以便选定组件库。 注意:这只在调研过程中会如此,实际开发项目中极少存在一个项目中集成多个UI组件库的情况。 本demo实际试验阿拉伯语、法语、葡萄牙语

    2024年02月08日
    浏览(49)
  • vue项目element-ui上传组件自定义方法无法获取进度

    原因:element-ui中的up-load组件使用时,若用自定义上传http-request,会重新申明XMLHttpRequest,on-progress里的申明则被覆盖,无法使用该钩子,无法添加进度条 方案一:假进度条;写个假进度条优化用户体验,使用el-upload组件里on-change方法的status状态,配合定时器 ,以vue3为例 ,

    2024年02月15日
    浏览(50)
  • 修改element-ui主题颜色

    方法1:创建一个公共的更改的CSS文件,在CSS文件里写入 $–color-primary:加颜色,最后在main.js中引入 方法2:借助在线主题生成工具,设置自己想要的颜色,下载主题,解压之后,在main.js 中引入 方法3:安装主题工具 1、安装主题工具 2、从 npm 安装theme 3、初始化变量文件 4、根

    2024年02月11日
    浏览(68)
  • element-ui 使用自定义复选框

    为什么不使用自带复选框? 自带复选框无法确定数据来源于回填还是用户手动选择,因为回填表格复选框时只能使用toggleRowSelection方法来遍历回填,而且会触发selection-change事件,而手动添加也会触发selection-change事件,无法判断某个选中数据来源于回填还是用户手动选择。

    2024年02月16日
    浏览(43)
  • 基于Vue和Element-UI自定义分组以及分组全选Select 选择器

    上一篇博文我们已经实现了基于Vue和Element-UI中Select 选择器的分组全选以及样式修改问题, 但是在分组方面我们是用了element-ui 自带的 使用el-option-group对备选项进行分组,它的label属性为分组名 的功能,但是出来的效果样式很难自定义,就算是魔改element的样式也有一些改不了

    2023年04月08日
    浏览(49)
  • vue3 + vite自定义封装vue + element-ui 表格组件,发布到npm包的全过程。

    当我们项目中用到的表格太多的话,就会导致我们的代码量一直增加,所以我们要封装一个公共得组件,通过传参引入来使用,下面这篇文章主要给大家介绍了关于vue3+vite自定义封装vue组件发布到npm包的相关资料,需要的朋友可以参考下。 提示我们要安装 create-vite@4.1.0 得依赖

    2024年02月02日
    浏览(66)
  • Vue中使用element-ui 给按钮绑定一个单击事件,实现点击按钮就弹出一个dialog对话框

    1.需求描述 想要实现点击一个按钮就弹出一个对话框,在对话框中可输入数据进行提交,在点击取消时对话框关闭 2.功能实现 1.创建按钮 在element中把找到按钮的代码放到div里 2.创建对话框 在element中找到dialog对话框对应的代码,把代码粘贴到对应的位置 3.对话框与按钮的绑定

    2024年01月18日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包