国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vue2實現(xiàn)自定義主題webpack-theme-color-replacer

這篇具有很好參考價值的文章主要介紹了vue2實現(xiàn)自定義主題webpack-theme-color-replacer。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

需求:根據(jù)element的自定義主題色,之后改變element的全局所有顏色,解決頁面刷新后主題色失效問題,這個需要把顏色存入到瀏覽器的存儲中,如果換個瀏覽器就得重新選擇了哈,如果需要在不同的瀏覽器保持一致的主題,需要跟后端溝通

之前還寫過一個簡單的,有需要的可以去看:vue實現(xiàn)element-ui自定義主題色切換(簡單版)_element主題切換_請叫我歐皇i的博客-CSDN博客

效果如下:

vue2實現(xiàn)自定義主題webpack-theme-color-replacer,vue-插件,webpack,前端,node.js

1.下載顏色插件

我下的是1.4.6版本,最好下載的版本一致吧,不然報錯了我也沒辦法

npm install webpack-theme-color-replacer@1.4.6

2.建個js文件themeColorClient.js

直接復制粘貼以下代碼

import client from 'webpack-theme-color-replacer/client'
import forElementUI from 'webpack-theme-color-replacer/forElementUI'
// 注意自己項目里的引入路徑

export let curColor = '#409EFF'

// 動態(tài)切換主題色
export function changeThemeColor(newColor) {
  var options = {
    newColors: [...forElementUI.getElementUISeries(newColor), '#ff0000', '#ffff00']
  }
  return client.changer.changeColor(options, Promise)
    .then(() => {
      curColor = newColor
      localStorage.setItem('theme_color', curColor)
    })
}
// 頁面刷新的時候會觸發(fā)
export function initThemeColor() {
  const savedColor = localStorage.getItem('theme_color')
  if (savedColor) {
    curColor = savedColor
    changeThemeColor(savedColor)
  }
}

3.在main.js文件導入

保證每次刷新數(shù)據(jù)還在

import { initThemeColor } from './plugins/themeColorClient'
initThemeColor()

4.顏色選擇器

<template>
  <el-color-picker v-model="mainColor" size="small" @change="changeColor" />
</template>

<script>
import { changeThemeColor, curColor } from "@/plugins/themeColorClient";
export default {
  name: "d2-header-color",
  data() {
    return {
      mainColor: curColor,
      predefine: [
        "#ff4500",
        "#ff8c00",
        "#ffd700",
        "#90ee90",
        "#00ced1",
        "#1e90ff",
        "#c71585",
      ],
    };
  },
  methods: {
    changeColor(newColor) {
      console.log(newColor, "顏色");
      changeThemeColor(newColor)
        .then((t) => console.log("123465"))
        .catch((err) => console.log(err, "567"));
      //.then(t => this.$x.toast.success('主題色切換成功~'))
    },
  },
};
</script>

5.在vue.config.js中配置

const ThemeColorReplacer = require('webpack-theme-color-replacer')
const forElementUI = require('webpack-theme-color-replacer/forElementUI')
module.exports = {
  chainWebpack: config => {
       // 自定義主題色
    config
      .plugin('theme-color-replacer')
      .use(ThemeColorReplacer, [{
        fileName: 'style/theme-colors.[contenthash:8].css',
        matchColors: [
          ...forElementUI.getElementUISeries(process.env.VUE_APP_ELEMENT_COLOR), // Element-ui主色系列
          '#0cdd3a', // 自定義顏色
          '#c655dd'
        ],
        changeSelector: forElementUI.changeSelector,
        // 解決history模式下路由跳轉(zhuǎn)樣式不生效問題
        injectCss: true,
        isJsUgly: process.env.NODE_ENV === 'production' ? true : undefined
      }])
}
    
}

6.如果非element的組件需要使用全局自定義樣式可以如下設(shè)置

在公共的scss樣式文件下添加如下代碼

// 全局更改樣式,必須是--navWidth,可以看theme文件
//--navWidth為變量,必須以--開頭,否則其它頁面使用這個變量不會生效
$mainBgc: var(--navWidth, #409eff);

?之后在需要全局樣式下添加$mainBgc即可

.box{
color:$mainBgc;
}

這樣就可以實現(xiàn)了,文章到此結(jié)束,希望對你有所幫助~有不懂的可以在評論區(qū)聯(lián)系我文章來源地址http://www.zghlxwxcb.cn/news/detail-733199.html

到了這里,關(guān)于vue2實現(xiàn)自定義主題webpack-theme-color-replacer的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • 【分頁表格】Vue2 + Element UI實現(xiàn)自定義的分頁表格組件(自定義Vue組件)

    這篇文章,主要介紹Vue2 + Element UI實現(xiàn)自定義的分頁表格組件(自定義Vue組件)。 目錄 一、分頁表格 1.1、運行效果 1.2、運行環(huán)境 1.3、案例代碼

    2024年02月11日
    瀏覽(51)
  • 【vue2】中 谷歌 Chrome 實現(xiàn)自定義頁眉頁腳打印

    【vue2】中 谷歌 Chrome 實現(xiàn)自定義頁眉頁腳打印

    解決的最終方案如下圖 ?需求:頁眉頁腳如下,設(shè)計圖所示,使用瀏覽器Ctrl+P打印即可,大小B5試紙 說明:數(shù)據(jù)內(nèi)容不確定分頁的情況下,建議使用 方法二 相關(guān)屬性參考地址:https://www.w3cplus.com/css/designing-for-print-with-css.html 方法一:絕對相對定位(將自定義的頁眉頁腳內(nèi)容通

    2024年02月12日
    瀏覽(34)
  • Vue2之webpack篇(二)Loader

    Vue2之webpack篇(二)Loader

    目錄 一、loader處理css 1、css文件的創(chuàng)建 2、安裝css-loader ?3、配置 4、打包 ?5、最終效果 二、loader處理圖片 1、引入圖片 2、安裝file-loader 3、配置module 4、webpack打包 ?三、ES6轉(zhuǎn)ES5 1、介紹 2、安裝babel-loader 3、webpack.config.js配置 4、webpack打包 四、打包Vue 1、下載vue 2、引入、使用

    2024年02月09日
    瀏覽(14)
  • 《Webpack5 升級》- Vue2.x 組件庫 Webpack3 升 5

    基于 Vue2.x 的項目和組件庫開發(fā)于 2019 年 ,那時對 Webpack 版本沒有概念,項目和組件庫的版本混亂…有的使用 v3 ,有的使用 v4 … 對于現(xiàn)今 2023 年(或 2024 年) 的整個生態(tài)環(huán)境是不夠用的,無法使用較新和更優(yōu)秀的插件。所以升級 勢在必行 ! 注意 本篇是 基于 Vue2.x 組件庫

    2024年02月03日
    瀏覽(17)
  • 使用Vue3和Vite升級你的Vue2+Webpack項目

    使用Vue3和Vite升級你的Vue2+Webpack項目

    ???? 博主貓頭虎(????)帶您 Go to New World??? ?? 博客首頁 ——????貓頭虎的博客?? ?? 《面試題大全專欄》 ?? 文章圖文并茂??生動形象??簡單易學!歡迎大家來踩踩~?? ?? 《IDEA開發(fā)秘籍專欄》 ?? 學會IDEA常用操作,工作效率翻倍~?? ?? 《100天精通Golang(基礎(chǔ)

    2024年02月09日
    瀏覽(27)
  • nginx vue2+webpack 和 vue3+vite 配置二級目錄訪問

    我們開發(fā)中會遇到這樣的需求,讓我們用服務器nginx部署一個用域名的二級目錄來訪問項目 https:xxx/二級目錄/ 來放訪問項目 目錄 思路 1、nginx配置(vue2?和 vue3配置的nginx相同) 2、vue2+webpack的配置 (1)vue.config.js配置 (2)router配置 3、vue3+vite的配置 (1)vite.config.js配置 (

    2024年02月09日
    瀏覽(25)
  • Rspack 創(chuàng)建 vue2/3 項目接入 antdv(rspack.config.js 配置 less 主題)

    Rspack 創(chuàng)建 vue2/3 項目接入 antdv(rspack.config.js 配置 less 主題)

    Rspack CLI 官方文檔。 rspack.config.js 官方文檔。 創(chuàng)建項目(文檔中還提供了 Rspack 內(nèi)置 monorepo 框架 Nx 的創(chuàng)建方式,根據(jù)需求進行選擇) 創(chuàng)建好項目并運行,目前 Rspack 版本支持的工程模版: 默認創(chuàng)建的 vue 項目為 vue3 : 如果需要其他版本,或其他框架的基礎(chǔ)工程,可到官方提

    2024年02月11日
    瀏覽(25)
  • vue2+webpack升級vue3+vite,在vue3組合式編程中使用vuex

    同學們可以私信我加入學習群! 我的項目是從vue2+webpack升級為vue3+vite,這種升級工作,其實最重要的不是如何快速準確地把原有vue2項目全部重構(gòu)為vue3項目,因為這是不現(xiàn)實的。 升級工作一定是一個長久的持續(xù)過程,所以如何保證舊的vue2項目與新的vue3模塊之間互相兼容,才

    2024年01月18日
    瀏覽(31)
  • 若依前端Vue3模板——自定義主題+炫彩主題

    若依前端Vue3模板——自定義主題+炫彩主題

    實現(xiàn)結(jié)果 實現(xiàn)步驟 默認主題的設(shè)置 文件位置: src/settings.js 布局設(shè)置 圖標文件 文件位置: src/assets/images/blue.svg 復制同級的 light.svg 修改名稱即可,將兩個顏色替換為:#409eff 布局組件 文件位置: src/layout/components/Settings/index.vue template模板中添加控件如下 新增一個主題風格選

    2024年02月14日
    瀏覽(60)
  • vue2+webpack升級vue3+vite,報錯Cannot read properties of null (reading ‘isCE‘)

    vue2+webpack升級vue3+vite,報錯Cannot read properties of null (reading ‘isCE‘)

    同學們可以私信我加入學習群! 系列文章:vue2+webpack升級vue3+vite,修改插件兼容性bug 前面的文章主要是介紹,在升級初始階段遇到的一些顯而易見的兼容性問題和bug。隨著項目迭代的不斷深入,一些不容易暴露的問題也漸漸呈現(xiàn)。 本文主要記錄一些開發(fā)重構(gòu)過程中的bug vu

    2024年01月18日
    瀏覽(33)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包