Vue + Element + Less 一鍵換膚的一種方法


首先, 提取公用樣式。

這一步要做的內容就是,將Vue 各組件中的Element 樣式提取到一個文件,使各組件的樣式統一標准,這一步應該不難。

其次,css變量的聲明提取。

為了能一鍵換膚,有種簡單的方法是准備多套樣式文件,然后根據變量或者環境導入不同的主題,但其實還可以優化,就是在css中聲明變量,類似的文件結構大概是element.css 存放css 樣式, 然后由不同的主題文件去聲明變量對應的值。

舉個例子   

element.css 中 background: var(--back-ground);

dark.css(js)中 --back-ground: #000000;

light.css(js)中 --back-ground: #ffffff;

最后,根據不同的變量在main.js 中引入element.css 與對應的主題文件即可。

可能會出現的問題:

1. import 無效問題

試試用require 或者import()

2.打包后生產環境無效問題

build文件夾下 的webpack.prod.conf.js 中extract 改為true 即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM