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

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

這篇具有很好參考價(jià)值的文章主要介紹了uniapp切換主題顏色(后臺(tái)管理系統(tǒng))。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

需求:在現(xiàn)有已經(jīng)做好的后臺(tái)管理系統(tǒng)添加一個(gè)切換主題顏色的功能

分析:該項(xiàng)目用了很多uniapp的組件,css樣式?jīng)]有統(tǒng)一,類名也沒(méi)有統(tǒng)一

使用混合mixin.scss,并使用vuex

效果圖

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

功能:按鈕背景顏色、部分樣式、字體圖標(biāo)、分頁(yè)跟隨主題顏色變化也變化

每一個(gè)用戶喜歡的主題顏色都不一樣,后端已經(jīng)在用戶數(shù)據(jù)表加了一個(gè)用于存儲(chǔ)主題顏色的字段默認(rèn)是1(綠色)

1.先在用戶登錄成功后,把用戶的主題顏色保存在本地存儲(chǔ)中

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

 uni.setStorageSync('theme',data.Theme);//當(dāng)前用戶的主題配色

?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-693564.html

2.在vuex添加全局變量

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

?有些人的可能不是這樣的,但是不重要,我們只需要在你們的vuex的 state、mutations、getters、actions添加對(duì)應(yīng)的方法就行,直接上代碼

curThemeType是存放當(dāng)前用戶的主題顏色的標(biāo)識(shí)符,我這邊后端用1,2,3,4來(lái)表示不同顏色,你們也可以不需要寫,

curThemeColor存放的是顏色值,后期是全局的一個(gè)顏色值,只需要在用的地方用插值表達(dá)式或者字符拼接的方式就行

?

?3.在存放公共文件里添加一個(gè)mixin.js

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

代碼:

import { mapGetters, mapMutations } from 'vuex';
export default {
install(Vue) {
Vue.mixin({
data() {
return {
};
},
methods: {
...mapMutations(['setCurThemeType','setCurThemeType2']),
},
computed: {
...mapGetters(['themeType','themeType2'])
},

});
}
};

?

?4.然后去入口文件引入

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

?

import myMixin from './common/mixin.js'; //--實(shí)現(xiàn)換膚 引入 myMixin
Vue.use(myMixin) //實(shí)現(xiàn)換膚 調(diào)用 myMixin

?

5.準(zhǔn)備工作已經(jīng)好了,現(xiàn)在去APP.vue里面判斷用戶上一次使用的主題顏色也就是之前在登錄存在本地存儲(chǔ)的值

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

代碼:

先在APP.vue引入

//換膚引入
import {mapMutations} from 'vuex';

然后在onLaunch()里去拿本地存儲(chǔ)的值,然后賦予顏色值然后存在vuex,然后就可以使用了

onLaunch: function() {
console.log('App Launch');
const that = this;
//項(xiàng)目啟動(dòng)獲取緩存中的皮膚
let SwitchNameID = parseInt(uni.getStorageSync('theme')); //當(dāng)前配色I(xiàn)D
if (SwitchNameID == '') {
SwitchNameID = 1;
}
console.log('當(dāng)前配色I(xiàn)D', SwitchNameID);
// Vuex
that.setCurThemeType(SwitchNameID);
//用于動(dòng)態(tài)的改變定義在vuex當(dāng)中的變量,達(dá)到動(dòng)態(tài)換膚的效果
that.$store.dispatch('handleActionAgree', SwitchNameID); //存放當(dāng)前ID

//--------- color色--------------------------
// 背景顏色跟單選多選的顏色
let colorS = '';
if (SwitchNameID == 1) {
colorS = '#7AC463';
} else if (SwitchNameID == 2) {
colorS = '#EFB46F';
} else if (SwitchNameID == 3) {
colorS = '#cf2532';
} else if (SwitchNameID == 4) {
colorS = '#3c9cff';
}
// Vuex
console.log('當(dāng)前顏色值', colorS);
that.setCurThemeType2(colorS);
//用于動(dòng)態(tài)的改變定義在vuex當(dāng)中的變量,達(dá)到動(dòng)態(tài)換字體顏色換單選多選顏色的效果
that.$store.dispatch('handleActionAgree2', colorS); //存放當(dāng)前顏色
window.document.documentElement.setAttribute('data-theme', SwitchNameID);
},

?

6.去頁(yè)面使用,使用的方法是在頁(yè)面上使用style綁定變量值

1.:style="{ 'background-color': themeType2}" 

2.:style="'background-color:' + themeType2"  (微信小程序用這種)

?

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

?

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

?

themeType2就是一個(gè)全局的顏色值,在需要用的地方直接使用就行了

?在這里其實(shí)已經(jīng)可以實(shí)現(xiàn)根據(jù)后端的值去改變主題顏色了,

?

?

7.接下來(lái)寫功能.根據(jù)自己的需求在對(duì)應(yīng)的地方添加下拉框,或者選擇框,由于我這邊的框架是uniapp而且需要在頂部顯示,我就在對(duì)應(yīng)的文件寫以下的代碼

在你需要的地方的文件加入下拉框(uniapp官網(wǎng)),我這邊的下拉框數(shù)據(jù)是后端已經(jīng)寫好的,方便后期維護(hù)(你們根據(jù)自己的情況來(lái),也可以自己定義下拉框內(nèi)容)

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

我的數(shù)據(jù)長(zhǎng)這樣

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

接下來(lái)在這個(gè)頁(yè)面的created()或者onLoad()里把本地存儲(chǔ)的拿出來(lái)存到vuex中

主要代碼:

let SwitchNameID = parseInt(uni.getStorageSync('theme')); //當(dāng)前配色I(xiàn)D
if (SwitchNameID == '') {
SwitchNameID = 1;
}
// Vuex
that.setCurThemeType(SwitchNameID);
//用于動(dòng)態(tài)的改變定義在vuex當(dāng)中的變量,達(dá)到動(dòng)態(tài)換膚的效果
that.$store.dispatch('handleActionAgree', SwitchNameID);
window.document.documentElement.setAttribute('data-theme', SwitchNameID);

?

?

然后寫一個(gè)方法,在用戶在下拉框選擇了其他顏色,就是去修改vuex的值,實(shí)現(xiàn)切換項(xiàng)目中的主題顏色,然后再去修改數(shù)據(jù)庫(kù)該用戶里面的值

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

?代碼:

// 配色
ChangeSwitchTopic(e) {
const that = this;
let i = e.detail.value
that.SwitchTopicName = that.SwitchTopicAddList[i].BasicDataName;
let SwitchValue = that.SwitchTopicAddList[i].BasicDataCode;
// 將選中的模式存儲(chǔ)緩存
uni.setStorageSync('theme', parseInt(SwitchValue));
// Vuex
that.setCurThemeType(SwitchValue);
//用于動(dòng)態(tài)的改變定義在vuex當(dāng)中的變量,達(dá)到動(dòng)態(tài)換膚的效果
that.$store.dispatch('handleActionAgree', parseInt(SwitchValue));

// 然后再調(diào)用接口去修改當(dāng)前用戶喜歡的配色,下次就還是這套
let value = uni.getStorageSync("user");
api.get({
url: 'User/SetTheme',
data: {
UserID: value, //登錄的商家用戶ID
LanguageType: that.LanguageTypeId,
Theme: SwitchValue, //配色I(xiàn)D
},
success: data => {
console.log('配色切換', data);
}
});

//--------- color色--------------------------
// 顏色跟單選多選的顏色是在APP.vue跟top-window.vue設(shè)置的,如果要添加或者修改,需要修改兩個(gè)地方
let colorS = '';
if (SwitchValue == 1) {
colorS = '#7AC463';
} else if (SwitchValue == 2) {
colorS = '#EFB46F';
} else if (SwitchValue == 3) {
colorS = '#cf2532';
} else if (SwitchValue == 4) {
colorS = '#3c9cff';
}
// Vuex
this.setCurThemeType2(colorS);
//用于動(dòng)態(tài)的改變定義在vuex當(dāng)中的變量,達(dá)到動(dòng)態(tài)換字體顏色換單選多選顏色的效果
this.$store.dispatch('handleActionAgree2', colorS);

window.document.documentElement.setAttribute('data-theme', SwitchValue);
},

?

結(jié)束---------

這樣已經(jīng)可以實(shí)現(xiàn)基本切換主題顏色的顏色值了

注意:微信小程序以下方法不可用

但是那些用了uniapp組件的沒(méi)辦法直接在頁(yè)面上修改,就只能再添加一個(gè)混合了(mixin.scss)

1.再創(chuàng)建一個(gè)mixin.scss

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

?代碼:

// 想要在css用,需要先在uni.scss里引入
// 添加或者修改,需要在uni.scss里添加或者修改
// @include ft_color($bj-color-theme1);
// @include bg_color($bj-color-theme1);
// $bj-color-theme1 是在uni.scss里定義的顏色,data-theme會(huì)判斷當(dāng)前是什么值用對(duì)應(yīng)的顏色
//該方法針對(duì)uniapp原生組件無(wú)法在view視圖直接修改,要操作css樣式修改的

@mixin bg_color($color) { //更換背景
background-color: $color ;
[data-theme = "1"] & {
background-color: $bj-color-theme1 !important;
}
[data-theme = "2"] & {
background-color: $bj-color-theme2 !important;
}
[data-theme = "3"] & {
background-color: $bj-color-theme3 !important;
}
[data-theme = "4"] & {
background-color: $bj-color-theme4 !important;
}
}
@mixin ft_color($color) { //更換文字顏色
color: $color;
[data-theme = "1"] & {
color: $bj-color-theme1 !important;;
}
[data-theme = '2'] & {
color: $bj-color-theme2 !important;;
}
[data-theme = "3"] & {
color: $bj-color-theme3 !important;;
}
[data-theme = '4'] & {
color: $bj-color-theme4 !important;;
}
}

?

?然后去uni.scss引入并且定義初始顏色

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

 @import '@/common/mixin.scss';//引入混入背景

/*
切記一定要在 uni.scss 預(yù)加載文件中 引入 自定義的 mixin.scss 并設(shè)置皮膚色
*/

$bj-color-theme1: #7AC463; //背景主題顏色默認(rèn)(綠色)
$bj-color-theme2: #EFB46F; //背景主題顏色1(黃色)
$bj-color-theme3: #cf2532; //背景主題顏色2(紅色)
$bj-color-theme4: #3c9cff; //背景主題顏色3(藍(lán)色)

?

?

2.再去APP.vue修改組件顏色,F(xiàn)12找到對(duì)應(yīng)的類名,然后修改

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

?

<style lang="scss">

//時(shí)間選擇器選中顏色
.uni-calendar-item--multiple .uni-calendar-item--before-checked,
.uni-calendar-item--multiple .uni-calendar-item--after-checked,
.uni-calendar-item__weeks-box .uni-calendar-item--checked,
.uni-datetime-picker--btn,
{
@include bg_color($bj-color-theme1);
}
//時(shí)間選擇器選中顏色 -- 確定按鈕
.confirm-text{
@include ft_color($bj-color-theme1);
}

 </style>

?

?效果;

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

uniapp切換主題顏色(后臺(tái)管理系統(tǒng))

這是我的工作中實(shí)現(xiàn)的,有很多不足,還需要努力,供大家參考,網(wǎng)上還有很多方式,根據(jù)自己的需求來(lái)修改

?

到了這里,關(guān)于uniapp切換主題顏色(后臺(tái)管理系統(tǒng))的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vue3管理系統(tǒng)中后臺(tái)返回pdf格式的文件流,前端如何預(yù)覽?以及uniapp微信小程序中后臺(tái)返回的base64位的pdf文件如何預(yù)覽?

    vue3管理系統(tǒng)中后臺(tái)返回pdf格式的文件流,前端如何預(yù)覽?以及uniapp微信小程序中后臺(tái)返回的base64位的pdf文件如何預(yù)覽?

    后臺(tái)返回的是base64格式的pdf文件,首先需要解析base64文件的插件 image-tools 1 安裝并引入插件 2 封裝預(yù)覽pdf的函數(shù) 3 調(diào)用接口獲取數(shù)據(jù)

    2024年01月18日
    瀏覽(176)
  • ElementUI主題顏色動(dòng)態(tài)切換并緩存

    今天給大家分享一下在Vue中使用ElementUI時(shí),想切換主題顏色的兩種方式。 第一種:靜態(tài)改變項(xiàng)目中的主題顏色 比較簡(jiǎn)單,稍微帶過(guò): 項(xiàng)目中創(chuàng)建 element-variables.scss 文件,編寫內(nèi)容: 之后,在項(xiàng)目的入口文件中,直接引入以上樣式文件即可(無(wú)需引入 Element 編譯好的 CSS 文件

    2024年02月14日
    瀏覽(23)
  • 前端實(shí)現(xiàn)動(dòng)態(tài)切換主題色-使用 css/less 動(dòng)態(tài)更換主題顏色(換膚功能)或通過(guò)單擊更改背景顏色

    提示: 以下是本篇文章正文內(nèi)容,主要描述 使用 css/less 動(dòng)態(tài)更換主題色(換膚功能) 提示: 使用 css/less 動(dòng)態(tài)更換主題色(換膚功能), 方法共通,不限制技術(shù)棧: 其實(shí)在日常項(xiàng)目開(kāi)發(fā)中經(jīng)常會(huì)遇到有些用戶想要一些自定義的的主題色來(lái)滿足不同的視覺(jué)需求,這時(shí)候就需

    2024年02月15日
    瀏覽(24)
  • 后臺(tái)管理系統(tǒng)權(quán)限管理詳解

    簡(jiǎn)述權(quán)限管理: 你可以在后臺(tái)通過(guò)一個(gè) tree 控件或者其它展現(xiàn)形式給每一個(gè)頁(yè)面動(dòng)態(tài)配置權(quán)限,之后將這份路由表存儲(chǔ)到后端。當(dāng)用戶登錄后得到roles,前端根據(jù)roles去向后端請(qǐng)求可訪問(wèn)的路由表,從而動(dòng)態(tài)生成可訪問(wèn)頁(yè)面,之后就是 router.addRoutes 動(dòng)態(tài)掛載到router 上,你會(huì)發(fā)

    2024年02月05日
    瀏覽(20)
  • 若依框架后臺(tái)管理系統(tǒng)-忘記后臺(tái)管理密碼-忘記密碼重置方法

    1. 無(wú)鹽老版 1.1、生成密碼密文 1.2、替換數(shù)據(jù)庫(kù)中密碼 2. 加鹽新版 (今天 2022-03-16) 2.1、生成密碼密文 2.2、替換數(shù)據(jù)庫(kù)中密碼 補(bǔ)充說(shuō)明 參考資料 管理后臺(tái)忘記密碼兩步解決: 找到工具類: com.ruoyi.common.utils.SecurityUtils 添加 main 方法:打印出密碼密文 大家好,我是笨笨,笨

    2024年02月15日
    瀏覽(29)
  • 微信小程序考勤簽到管理系統(tǒng)+后臺(tái)管理系統(tǒng)

    微信小程序考勤簽到管理系統(tǒng)+后臺(tái)管理系統(tǒng)

    《微信小程序考勤簽到管理系統(tǒng)+后臺(tái)管理系統(tǒng)》該項(xiàng)目含有源碼、論文等資料、配套開(kāi)發(fā)軟件、軟件安裝教程、項(xiàng)目發(fā)布教程等 本系統(tǒng)包含微信小程序做的考勤前臺(tái)和Java做的后臺(tái)管理系統(tǒng): 微信小程序——考勤前臺(tái)涉及技術(shù): WXML 和 WXSS、JavaScript Java——考勤后臺(tái)涉及技術(shù)

    2024年02月09日
    瀏覽(22)
  • 后臺(tái)管理系統(tǒng)(第一天)

    后臺(tái)管理系統(tǒng)(第一天)

    1、后臺(tái)管理系統(tǒng)項(xiàng)目簡(jiǎn)介 什么是后臺(tái)管理系統(tǒng)項(xiàng)目? 在前端領(lǐng)域當(dāng)中,開(kāi)發(fā)后臺(tái)管理系統(tǒng)項(xiàng)目,并非是Java,PHP等后臺(tái)語(yǔ)言項(xiàng)目在前面課程當(dāng)中,我們已經(jīng)開(kāi)發(fā)了一個(gè)項(xiàng)目【尚品匯電商平臺(tái)項(xiàng)目】,這個(gè)項(xiàng)目主要針對(duì)的是用戶(游客),可以讓用戶在平臺(tái)當(dāng)中購(gòu)買產(chǎn)品。 但

    2024年02月05日
    瀏覽(78)
  • 后臺(tái)用戶管理系統(tǒng)

    后臺(tái)用戶管理系統(tǒng)

    layui(諧音:類UI) 是一款采用自身模塊規(guī)范編寫的 前端 UI 框架 ,遵循原生 HTML/CSS/JS 的書寫與組織形式,門檻極低,拿來(lái)即用。 由國(guó)人開(kāi)發(fā),16年出廠的框架,其主要提供了很多好看、方便的樣式,并且基本拿來(lái)即用,和Bootstrap有些相似,但該框架有個(gè)極大的好處就是定義了

    2024年02月02日
    瀏覽(17)
  • 后臺(tái)管理系統(tǒng)

    后臺(tái)管理系統(tǒng)

    后臺(tái)管理系統(tǒng)主要是我們內(nèi)部人員使用的一款用來(lái)管理我們產(chǎn)品的一個(gè)系統(tǒng),然后呢,我們今天寫的呢是一個(gè)電商的后臺(tái)管理系統(tǒng)。主要是可以用來(lái)管理我們的用戶還有我們是商品的。 我們這個(gè)系統(tǒng)呢采用的是一個(gè)前后端分離的模式,主要是使用后端給我們的接口來(lái)實(shí)現(xiàn)的,

    2023年04月10日
    瀏覽(14)
  • vue項(xiàng)目-后臺(tái)管理系統(tǒng)

    前言: 一個(gè)傳唱度極高的前端項(xiàng)目,及其適合像博主這樣的小白練手。特以此文章記錄下項(xiàng)目基本的創(chuàng)作思路,并且文末附贈(zèng)項(xiàng)目源碼,思維導(dǎo)圖及一些后臺(tái)文件,有興趣可自取。希望對(duì)朋友們有用。 結(jié)構(gòu): 一,登錄頁(yè) 二,主頁(yè)面 1,用戶管理 用戶列表 2,權(quán)限管理 角色列

    2024年02月16日
    瀏覽(17)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包