猿问

vue+sass实现换肤功能

1 需求: 根据所选的主题色,自动切换当前的主题
2 想法: 我用sass做了mixin, 根据不同的传参来改变颜色,但现在也是我css传什么值,他就显示什么算是写死的,我如果将js选中的值传入在css引入的mixin中?请教各位。

慕沐林林
浏览 840回答 1
1回答

手掌心

我用自定义属性的办法解决了这个问题 @mixin font_color ($color){  color: $color;  //这是默认值   [data-theme="theme1"] & {    color: $color-theme1; // 匹配属性的字段,一样就覆盖上面的。js中进行属性的值的改写   }   [data-theme="theme2"] & {    color: $color-theme2;   }   [data-theme="theme3"] & {    color: $color-theme3;   } }
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答