可以使用一个用来引入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状态管理,篇幅比较大,这里不敲这么多代码,反正道理是一样的。
方法一:使用原生js操作dom的方法,来改变css的样式,比如
document.getElementById(id).style.property =newstyle
这里的new style 里面就可以使用js传入的变量。
此方法固然可以,但是对应改变一些复杂的css,比如动画什么的,操作起来就不怎么方便了。此时,如下的方法二就显得尤为重要了!
方法二:
利用css变量来处理,思路是将js变量赋值给css变量,然后在css样式中使用css变量。如下图所示,我们传入year变量,然后生成了--top、--bottom等变量,然后这些变量就可以在css中使用!