1. 程式人生 > >element 如何自定義主題

element 如何自定義主題

imp git github img 更改 所有 off 總結 modules

自定義主題 在我學習element的時候,就直接忽略了。現在返回來學習一下 ,原來 通過自定義主題可以改變elemnt中默認的一些樣式。這樣,對於一些不想用elment自帶但是用到比較多的樣式,可以進行修改。

看了很多關於自定義主題的文章,其實都是 差不多的, 我想自己寫一遍,加深一下印象,也希望能給別人帶來幫助。

這篇博客的思路,總結性比較強,指的大家j借鑒:https://blog.csdn.net/young_emily/article/details/78591261

改變原有的elementui主題:
安裝elementui的自定義主題工具,然後初始化變量文件,得到elementui的scss文件,我們修改顏色就修改他的scss文件,然後編譯scss文件得到css文件,我們引用修改好了的css文件[實現覆蓋elementui的css文件]即可實現換膚。

我下面寫的這種方法;是項目中沒有使用scss,可以通過命令行主題工具進行深層次的主題機制

步驟:

1》安裝主題生成工具,可以全局安裝或者安裝在當前項目下,推薦安裝在項目裏,方便別人 clone 項目時能直接安裝依賴並啟動,這裏以全局安裝做演示。:

npm i element-theme -g

2》安裝白堊主題,可以從 npm 安裝或者從 GitHub 拉取最新代碼。

# 從 npm

npm i element-theme-chalk -D

# 從 GitHub

npm i https://github.com/ElementUI/theme-chalk -D

在這裏 我是使用的第一種方法,直接通過npm安裝的。

3》初始化變量文件 這一步 我自己在寫的實現的時候 總是找不到文件,我覺得這一步需要註意一下,後來不知道怎麽回事,就好了

主題生成工具安裝成功後,如果全局安裝可以在命令行裏通過 et 調用工具,如果安裝在當前目錄下,需要通過 node_modules/.bin/et 訪問到命令。執行 -i 初始化變量文件。默認輸出到 element-variables.scss,當然你可以傳參數指定文件輸出目錄。

et -i [可以自定義變量文件]

> ? Generator variables file 出現這一標誌,表示著初始化變量文件成功。

如果使用默認配置,執行後當前目錄會有一個 element-variables.scss

文件。內部包含了主題所用到的所有變量,它們使用 SCSS 的格式定義。大致結構如下:

這個文件就自動生成到根目錄下,可以看下圖:

技術分享圖片

修改變量

直接編輯 element-variables.scss 文件,例如修改主題色為紅色。

$--color-primary: red;

編譯主題

保存文件後,到命令行裏執行 et 編譯主題,如果你想啟用 watch 模式,實時編譯主題,增加 -w 參數;如果你在初始化時指定了自定義變量文件,則需要增加 -c 參數,並帶上你的變量文件名(每次改完變量後,都需要編譯後 才會在頁面中更改)

  1. et
  2. > ? build theme font
  3. > ? build element theme

引入自定義主題(即讓你修改的變量 得以應用)

默認情況下編譯的主題目錄是放在 ./theme 下,你可以通過 -o 參數指定打包目錄。像引入默認主題一樣,在代碼裏直接引用 theme/index.css 文件即可。

import ‘../theme/index.css‘

import ElementUI from ‘element-ui‘

import Vue from ‘vue‘

Vue.use(ElementUI)

這是目前我用到的自定義主題,還有其他種方法,以後會慢慢補充的,希望大家多多支持。

element 如何自定義主題