分享最實用的技術(shù),創(chuàng)造更大的價值

基于vue和scss采用uniapp開發(fā)主題皮膚更換的實現(xiàn)

基于vue和scss采用uniapp開發(fā)主題皮膚更換的實現(xiàn)

小程序開發(fā)過程中,基于Vue如何使用scss實現(xiàn)換膚(更換主題)功能的開發(fā)?


創(chuàng)軟小程序開發(fā)團隊經(jīng)過梳理后簡單整理如下。


首先,.scss 文件申明如下


$color-primary:#fa436a; /* 主題顏色 */
$color-primary-green:green; /* 更換的顏色 */
$color-primary-blue:blue; /* 更換的顏色 */


@mixin color_primary($color){/*通過該函數(shù)設(shè)置字體顏色,后期方便統(tǒng)一管理;*/
  color:$color;
  
  [data-theme="green"] & {
    color:$color-primary-green;
  }
  [data-theme="blue"] & {
    color:$color-primary-blue;
  }
  
}


/* 更換背景顏色采用上面一樣的邏輯 */



其次,在頁面引用中的代碼

.price{
    /*color: $color-primary;*/  /* 原始引用方式,錯誤 */
    @include color_primary($color-primary); /* 采用函數(shù)調(diào)用 */
}


最后,在js中設(shè)置更換皮膚

window.document.documentElement.setAttribute('data-theme', 'green'); /* */


Vue中如何使用scss實現(xiàn)換膚功能的主要原理


通過設(shè)置html的attribute屬性在封裝的函數(shù)中進行判斷,進行相應(yīng)的設(shè)置不同的顏色


css中 [ ] 可以識別到在html標(biāo)簽上設(shè)置的屬性,所以在html上對應(yīng)屬性發(fā)生變化時,就會執(zhí)行相應(yīng)的樣式,


這一步有點類似于平時給div添加一個.active屬性,css自動執(zhí)行相應(yīng)樣式。



聯(lián)系
QQ
電話
咨詢電話:189-8199-7898
TOP
8x8×在线永久免费视频| xxxxwww日本在线| 日韩精品无码人成视频手机| 亚洲色中文字幕在线播放| 秋霞免费理论片在线观看午夜| 国产欧美精品一区二区三区| 800av凹凸视频在线观看| 国产精品丝袜黑色高跟鞋| japanese性暴力| 忘忧草日本在线播放www| 中文字幕第5页| 少妇高潮喷潮久久久影院| 亚洲国产精品一区二区三区久久| 欧美三级韩国三级日本播放| 亚洲高清日韩精品第一区| 番茄视频在线观看免费完整| 国产99视频精品免费视频7| 精品福利一区二区三区免费视频| 国产午夜福利久久精品| 高清欧美一区二区三区| 国产精品免费精品自在线观看| 99re6热视频精品免费观看| 国产精品亚欧美一区二区三区| 高清不卡毛片免费观看| 国产人妖视频一区在线观看| 精品国产一区二区三区久久| 免费观看的a级毛片的网站| 精品96在线观看影院| 四虎国产在线观看| 男人的j插入女人的p| 午夜电影在线看| 特级淫片国产免费高清视频| 午夜免费理论片a级| 美女免费网站xx美女女女女女女bbbbbb毛片 | 性欧美视频在线观看| 一出一进一爽一粗一大视频免费的| 师尊要被cao坏了by谦野| tube人妖多泄精妖精| 在线观看a网站| 一本伊大人香蕉高清在线观看 | 中文人妻无码一区二区三区 |