日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
在VueVite應(yīng)用程序中實(shí)現(xiàn)暗/亮模式

在本文中,我將在不使用任何庫的情況下將dark\Light模式功能實(shí)現(xiàn)到我們的Vue Vite應(yīng)用程序中。

我們將首先創(chuàng)建一個(gè)簡單的Vite應(yīng)用程序,然后為我們的應(yīng)用程序設(shè)置一個(gè)簡單的用戶界面。在創(chuàng)建我們的Vue應(yīng)用程序之前,我想提到WrapPixel提供的一些很棒的免費(fèi)Vue模板,它們可以免費(fèi)下載并用于個(gè)人和商業(yè)用途。他們可以節(jié)省你的時(shí)間,因?yàn)槟憧梢灾苯釉谀愕捻?xiàng)目中使用他們令人驚嘆的用戶界面,這將給你的應(yīng)用程序帶來驚人的外觀和感覺,所以一定要去看看。

創(chuàng)建一個(gè)Vuejs Vite應(yīng)用程序

要設(shè)置Vite應(yīng)用程序,請打開您的終端并輸入以下內(nèi)容:

 
 
 
  1. npm init vite-app themeswitcher 

這個(gè)命令將搭建一個(gè)新的vite應(yīng)用程序,然后進(jìn)入項(xiàng)目目錄安裝項(xiàng)目依賴項(xiàng):

 
 
 
  1. cd themeswitcher 
  2. npm install 

安裝后,我們現(xiàn)在可以使用 npm run dev 命令運(yùn)行我們的應(yīng)用程序:

 
 
 
  1. code . && npm run dev 

code . 命令將以VS Code打開我們的應(yīng)用程序。

我們的應(yīng)用程序現(xiàn)在將在端口3000上運(yùn)行。

 

隨著應(yīng)用程序的啟動和運(yùn)行,我們現(xiàn)在可以創(chuàng)建CSS。在 public 目錄內(nèi)創(chuàng)建一個(gè) css/dark.css文件,這是我們將在黑暗模式環(huán)境中存儲所有CSS代碼的地方。

在dark.css文件中添加以下代碼:

 
 
 
  1. :root { 
  2.   --text: #ffffff; 
  3.   --background: #1d1d23; 
  4. }body { 
  5.   background-color: var(--background) !important; 
  6. }h1, 
  7. h2, 
  8. h3, 
  9. h4, 
  10. h5, 
  11. h6, 
  12. p, 
  13. small, 
  14. a { 
  15.   color: var(--text) !important; 

現(xiàn)在將在head中創(chuàng)建一個(gè)link標(biāo)簽將其設(shè)置為我們創(chuàng)建的 dark.css 文件,以便可以應(yīng)用在此定義的所有樣式。

我們將使用Javascript類來執(zhí)行此操作,在src目錄中創(chuàng)建 src/theme.js 文件,并添加以下代碼:

 
 
 
  1. export default class themeChanger { 
  2.     /** 
  3.      * @constructor 
  4.      */ 
  5.     constructor() {} 
  6.     _addDarkTheme() {        const darkThemeLinkEl = document.createElement('link') 
  7.         darkThemeLinkEl.setAttribute('rel', 'stylesheet') 
  8.         darkThemeLinkEl.setAttribute('href', './css/dark.css') 
  9.         darkThemeLinkEl.setAttribute('id', 'dark-theme-style') 
  10.         const docHead = document.querySelector('head') 
  11.         docHead.append(darkThemeLinkEl)    }    _removeDarkTheme() {        const darkThemeLinkEl = document.querySelector('#dark-theme-style') 
  12.         const parentNode = darkThemeLinkEl.parentNode 
  13.         parentNode.removeChild(darkThemeLinkEl)    }    _darkThemeSwitch() {        const darkThemeLinkEl = document.querySelector('#dark-theme-style') 
  14.         if (!darkThemeLinkEl) { 
  15.             this._addDarkTheme() 
  16.         } else { 
  17.             this._removeDarkTheme() 
  18.         }    }} 

我們創(chuàng)建3種方法:

  • _addDarkTheme():這會將link標(biāo)簽添加到應(yīng)用程序的HTML head中。
  • _removeDarkTheme():這將刪除已添加到HTML head的link標(biāo)簽。
  • _darkThemeSwitch():這將切換添加和刪除方法,以在我們的HTML head中添加和刪除link標(biāo)簽。

我們可以繼續(xù)在Vue.js組件中使用此方法。

編輯 components/HelloWorld.vue 中的代碼,如下所示:

 
 
 
  1.  
  2.  

我們引入 themeChanger 類的實(shí)例,然后將其存儲在Vue.js data實(shí)例中。然后,我們創(chuàng)建一個(gè)按鈕,該按鈕將調(diào)用我們在 theme.js 文件中創(chuàng)建的 _darkThemeSwitch。

完成此操作后,我們現(xiàn)在可以在應(yīng)用程序中在明暗模式之間切換。


網(wǎng)站標(biāo)題:在VueVite應(yīng)用程序中實(shí)現(xiàn)暗/亮模式
URL網(wǎng)址:http://www.dlmjj.cn/article/djjepod.html