亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目次
?2。CSSのダークモードスタイルを定義します
?3。アプリにテーマスイッチャーをマウントします
?4。オプション:システム優(yōu)先と同期します
comeキー機能の概要
ホームページ ウェブフロントエンド Vue.js Vueでダークモードテーマスイッチャーを?qū)g裝する方法

Vueでダークモードテーマスイッチャーを?qū)g裝する方法

Aug 02, 2025 pm 12:15 PM
vue ダークモード

テーマのトグルコンポーネントを作成し、IsDarkModeの狀態(tài)をチェックボックスでバインドし、Toggletheem関數(shù)を呼び出します。 2。オンマウントでテーマを初期化するために、ローカルストレージとシステム設(shè)定を確認します。 3.適用性のある関數(shù)を定義して、ダークモードクラスをHTML要素に適用してスタイルを切り替えます。 4. CSSカスタムプロパティを使用して、明るい変數(shù)と暗い変數(shù)を定義し、ダークモードクラスを介してデフォルトのスタイルをオーバーライドします。 5. Themeswitcherコンポーネントをメインアプリケーションテンプレートに紹介して、トグルボタンを表示します。 6.オプションで、システムのテーマを同期するために、カラーのシームの変更を好むことを聞きます。このソリューションは、VUE 3の構(gòu)成API、CSSクラス、およびローカルストレージを使用して、持続的で応答性の高いテーマスイッチング機能を?qū)g現(xiàn)し、最終的には単純なHTML、CSS、およびJavaScriptを介して外部ライブラリなしで効率的なテーマ管理を完了します。

Vueでダークモードテーマスイッチャーを?qū)g裝する方法

VUEでダークモードテーマスイッチャーを?qū)g裝することは簡単で、リアクティブ狀態(tài)、CSSクラス、およびオプションで永続的なストレージの組み合わせを使用して実行できます。以下は、VUE 3アプリケーション(構(gòu)成API)でこれを達成するための段階的なガイドですが、コンセプトはVUE 2で同様に機能し、マイナーな構(gòu)文が変更されます。

Vueでダークモードテーマスイッチャーを?qū)g裝する方法

?1。テーマのトグルコンポーネントを追加します

ユーザーが明るいモードとダークモードを切り替えることができるシンプルなトグルコンポーネント(例、 ThemeSwitcher.vue )を作成します。

 <! -  themeswitcher.vue->
<テンプレート>
  <div class = "theme-switcher">
    <ラベルclass = "switch">
      <入力型= "チェックボックス" @change = "toggletheme":checked = "isdarkmode" />
      <span class = "slider"> </span>
    </label>
    <span> {{isdarkmode? 「ダークモード」:「ライトモード」}} </span>
  </div>
</テンプレート>

<スクリプトのセットアップ>
&#39;vue&#39;から{ref、onmounted}をインポートします。

//それらのための反応狀態(tài)
const isdarkmode = ref(false);

// LocalStorageからユーザーの好みを確認するか、カラーシェームを好みます
onmounted(()=> {
  const savedtheme = localstorage.getitem( &#39;テーマ&#39;);
  const prefersdark = window.matchmedia( &#39;(color-scheme:dark)&#39;)。マッチ;

  isdarkmode.value = savedtheme === &#39;dark&#39; || (savedtheme === null && prefersdark);
  applytheme(isdarkmode.value);
});

//テーマを切り替えて、設(shè)定を保存します
関數(shù)toggletheem(){
  isdarkmode.value =!isdarkmode.value;
  applytheme(isdarkmode.value);
  localStorage.setItem( &#39;thema&#39;、isdarkmode.value? &#39;dark&#39;: &#39;light&#39;);
}

// <html>要素にテーマクラスを適用します
機能applytheme(dark){
  document.documentlement.classlist.toggle( &#39;dark-mode&#39;、dark);
}
</script>

<スタイルスコープ>
.theme-switcher {
  ディスプレイ:Flex;
  Align-Items:Center;
  ギャップ:8px;
  フォントサイズ:14px;
}

/ *スイッチ - スライダーの周りのボックス */
.switch {
  位置:相対;
  ディスプレイ:インラインブロック。
  幅:50px;
  高さ:24px;
}

.switch input {
  不透明:0;
  幅:0;
  高さ:0;
}

/ *スライダー */
.Slider {
  位置:絶対;
  カーソル:ポインター;
  上:0;
  左:0;
  右:0;
  下:0;
  バックグラウンドカラー:#ccc;
  遷移:0.4s;
  ボーダーラジウス:24px;
}

.Slider:{前
  位置:絶対;
  コンテンツ: &#39;&#39;;
  高さ:18px;
  幅:18px;
  左:3px;
  下:3px;
  背景色:白。
  遷移:0.4s;
  ボーダーラジウス:50%;
}

入力:Checked .Slider {
  バックグラウンドカラー:#4C56AF;
}

入力:checked .slider:before {
  変換:transtex(26px);
}
</style>

?2。CSSのダークモードスタイルを定義します

<html>要素の.dark-modeクラスを使用して、デフォルト(ライト)スタイルをオーバーライドします。

Vueでダークモードテーマスイッチャーを?qū)g裝する方法
 / * main.cssまたはapp.vue styles */
:根 {
  -bg-color:#ffffff;
   - テキスト?カラー:#333333;
}

.dark-mode {
  -BG-COLOR:#121212;
  -TEXT-COLOR:#F5F5F5;
}

體 {
  バックグラウンドカラー:var( -  bg-color);
  色:var( - テキストカラー);
  遷移:背景色0.3秒の容易さ、0.3秒の容易さ。
}

これは、 dark-modeクラスのコンテキストを使用して、ボタン、カード、入力などに拡張できます。

 .card {
  背景:#f8f9fa;
  境界線:1pxソリッド#dee2e6;
}

.dark-mode .card {
  背景:#1E1E1E;
  境界線:#333;
  色:#f5f5f5;
}

?3。アプリにテーマスイッチャーをマウントします

メインレイアウトまたはNavbarにThemeSwitcherコンポーネントを含めます。

Vueでダークモードテーマスイッチャーを?qū)g裝する方法
 <! -  app.vueまたはlayout.vue->
<テンプレート>
  <div id = "app">
    <themeswitcher />
    <router-view />
  </div>
</テンプレート>

<スクリプトのセットアップ>
&#39;./components/themeswitcher.vue&#39;からthemeswitcherをインポートします。
</script>

?4。オプション:システム優(yōu)先と同期します

onMountedフックは既にprefers-color-scheme 、新しいユーザーがシステムに適したデフォルトを取得します。これによりUXが改善されます。

システムテーマの変更を聞くこともできます。

 //最初のセットアップ後、內(nèi)側(cè)の內(nèi)側(cè)
const mediaquery = window.matchmedia( &#39;(color-scheme:dark)&#39;);
MediaQuery.addeventlistener( &#39;change&#39;、(e)=> {
  if(localStorage.getItem( &#39;テーマ&#39;)=== null){
    isdarkmode.value = e.matches;
    applytheme(e.matches);
  }
});

これにより、テーマを手動で選択していないユーザーがシステムの変更に従うことが保証されます。


comeキー機能の概要

  • ??明るいテーマと暗いテーマの間で切り替えます
  • ? localStorageでユーザーの好みを節(jié)約します
  • ?§デフォルトでシステムの好みを尊重します
  • ? CSSカスタムプロパティを使用して、簡単にテーマにします
  • CSSを使用したスムーズな遷移

それでおしまい。これで、Vueで動作する、永続的なダークモードの切り替えができました。外部ライブラリは必要ありません - ビュー、小さなCSS、およびブラウザAPIのスマート使用。

基本的に、チェックボックスをオンにして、 のクラスを更新し、選択を保存します。シンプルだが効果的。

以上がVueでダークモードテーマスイッチャーを?qū)g裝する方法の詳細內(nèi)容です。詳細については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當する法的責任を負いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

完全なPython Webアプリケーションを開発する方法は? 完全なPython Webアプリケーションを開発する方法は? May 23, 2025 pm 10:39 PM

完全なPython Webアプリケーションを開発するには、次の手順に従ってください。1。DjangoやFlaskなどの適切なフレームワークを選択します。 2。データベースを統(tǒng)合し、Sqlalchemyなどの軌道を使用します。 3.フロントエンドを設(shè)計し、VueまたはReactを使用します。 4.テストを?qū)g行し、pytestまたはunittestを使用します。 5.アプリケーションを展開し、HerokuやAWSなどのDockerとプラットフォームを使用します。これらの手順を通じて、強力で効率的なWebアプリケーションを構(gòu)築できます。

CSSを使用して、Webサイトでダークモードのテーマを?qū)g裝するためにどのように使用できますか? CSSを使用して、Webサイトでダークモードのテーマを?qū)g裝するためにどのように使用できますか? Jun 19, 2025 am 12:51 AM

darkmodecssseffectivilly、usecssvariables forthemecolors、検出システムとcolor-scheme、addamanualtogglebutton、andhandleimagesandgroundStully.1.DefinecsvariablesforideddardDarktheMeThementogoneRureseffisefisefisefisedyfiftedyfiftedifty.1.Definecsvariables.1

フロントエンドルーティングの作業(yè)と構(gòu)成方法(Vueルーター、Reactルーター)? フロントエンドルーティングの作業(yè)と構(gòu)成方法(Vueルーター、Reactルーター)? May 20, 2025 pm 07:18 PM

フロントエンドルーティングシステムのコアは、URLをコンポーネントにマッピングすることです。 VuerouterとReactrouterは、URLの変更をリスニングし、対応するコンポーネントを読み込むことにより、更新されないページの切り替えを?qū)g現(xiàn)します。構(gòu)成方法には、次のものが含まれます。1。ネストされたルーティング、親コンポーネントのネストされた子コンポーネントを許可します。 2。動的ルーティング、URLパラメーターに従って異なるコンポーネントのロード。 3.ルートガード、ルートスイッチングの前後の許可チェックなどのロジックを?qū)g行します。

Vueの反応性変換(実験、削除)とその目標の重要性は何ですか? Vueの反応性変換(実験、削除)とその目標の重要性は何ですか? Jun 20, 2025 am 01:01 AM

ReactivitytransforminVue3aimedtosimplifyhandlingreactivedatabyautomaticallytrackingandmanagingreactivitywithoutrequiringmanualref()or.valueusage.Itsoughttoreduceboilerplateandimprovecodereadabilitybytreatingvariableslikeletandconstasautomaticallyreac

コンポーネント開発におけるVue.jsとReactのコアの違いは何ですか? コンポーネント開発におけるVue.jsとReactのコアの違いは何ですか? May 21, 2025 pm 08:39 PM

コンポーネント開発におけるVue.jsとReactのコアの違いは次のとおりです。1)Vue.jsはテンプレートの構(gòu)文とオプションAPIを使用し、ReactはJSXと機能コンポーネントを使用します。 2)Vue.jsはレスポンシブシステムを使用し、Reactは不変のデータと仮想DOMを使用します。 3)Vue.jsは複數(shù)のライフサイクルフックを提供し、Reactはより多くの使用Effectフックを使用します。

VUEアプリケーションで國際化(I18N)とローカリゼーション(L10N)をどのように実裝できますか? VUEアプリケーションで國際化(I18N)とローカリゼーション(L10N)をどのように実裝できますか? Jun 20, 2025 am 01:00 AM

Internationalization andLocalizationInvueappsareprimalyally Handusingthevuei18nplugin.1.installvue-i18nvianpmoryarn.2.createLocalejsonfiles(例えば、en.json、es.json)for translationmessages.3.セクタイズ

VUEでV-Forディレクティブを使用してキー屬性(:key)を使用することの利點は何ですか? VUEでV-Forディレクティブを使用してキー屬性(:key)を使用することの利點は何ですか? Jun 08, 2025 am 12:14 AM

keyattributewithv-forinvueisentionforperformance andcorrectbehavior.first、ithelpsvuetrackeachelementivientlyは、evirtualdodifing diffingalgorithmを使用して、how'snlyly.lys nusterary.second、Itpreservescompentateinsirinideuri、insuriを識別します

VUEの大きなリストまたは複雑なコンポーネントの再レンダリングを最適化するにはどうすればよいですか? VUEの大きなリストまたは複雑なコンポーネントの再レンダリングを最適化するにはどうすればよいですか? Jun 07, 2025 am 12:14 AM

VUEの大きなリストと複雑なコンポーネントのパフォーマンスを最適化する方法は次のとおりです。1。V-Onceディレクティブを使用して靜的コンテンツを処理して、不必要な更新を削減します。 2。仮想スクロールを?qū)g裝し、Vue-Virtual-Scrollerライブラリを使用するなど、視覚領(lǐng)域のコンテンツのみをレンダリングします。 3.重複マウントを避けるために、キープアリブまたはv-onceを介したコンポーネントをキャッシュします。 4.計算されたプロパティとリスナーを使用して、レスポンシブロジックを最適化して再レンダリング範囲を削減します。 5. V-Forで一意のキーを使用し、テンプレートでのインライン関數(shù)の回避、パフォーマンス分析ツールを使用してボトルネックを見つけるなど、ベストプラクティスに従ってください。これらの戦略は、アプリケーションの流encyさを効果的に改善できます。

See all articles