vue ---- 仿ElementUI自定义换肤,更换主题

网站更换皮肤,有如下三种思路供参考:

  1. 预定义几套已经写好的样式文件,如下。然后动态切换选中的主题对应的css文件。
    在这里插入图片描述

  2. 在根元素上定义一个用来设置主题的class,然后动态更换该class,以达到切换主题的目的。

  3. 以上两种方式都可以轻易达到切换主题的目的,但是有一个限制,就是我们只能有定义好的这几种主题可以切换。
    今天我们来介绍一种新的更换主题的方式:
    优点: 该方式能够通过拾色器选择自己喜欢的主题色,并根据这个选择的主题色自由生成我们想要的主题。
    思路: 根据拾色器选择的颜色,配合一定的算法,动态生成一套主题样式,并将生成的样式插入到DOM中,作为全局样式。

步骤:

1. 新建主题定义组件theme-picker.vue, 代码如下:

注意:

  1. 设计中将主题样式文件写入在**<script type=‘text/template’ id=“themeColorInfo”>**中,目的有两点:
    1. 可以像在style标签中写样式一样,结构清晰且便于维护。
    2. 可以完美与{ {theme}}数据模板结合使用。
    3. 不会再Dom中显示,且可以很容易获取其中的样式内容。
  2. 由于是动态获取<script type=‘text
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值