vue+js动态切换element-ui生成的主题css文件

html-css013

vue+js动态切换element-ui生成的主题css文件,第1张

1.设定一个主题变量

2.在index.html中添加link标签,初始化一个主题文件

3.在Vue组件中进行动态切换

可以使用一个用来引入css文件的组件

<template>

    <div>

        <style type="text/css" :src="'/path/to/' + theme + '.css'"></style>

    </div>

</template>

<script>

    export default {

        data () {

            return {

                theme: 'your-custom-theme'

            }

        }

    }

</script>

注:以上代码没有经过测试,纯理论指导。应该没问题。还有更高级一点的用法是通过vuex状态管理,篇幅比较大,这里不敲这么多代码,反正道理是一样的。

  走访了好几个移动框架,来回切换了几次,发现都不是很适合我使用,要么是组件不够用,要么是组件无法二次封装。我在自己的项目中大多是需要使用框架之样式,所以思来想去还是用比较熟悉的mui移动框架( 官方网址 )。但是mui是没法使用npm进行安装的(一大遗憾),思来想去于是将mui框架所需的js,css文件放在static目录下:

在index.html中以静态资源的方式进行引用。

当然想要在组件中直接使用mui这个变量,需要在build/webpack.base.conf.js文件中进行配置

如需引用mui框架的样式只需要引入mui中的class样式

以上是我在项目中遇到问题的一些解决方案,谢谢。