1. ピニアとは何ですか? そこでピナの出現がありました vuex との比較:
Pinia のドキュメントには次のように書かれています:
つまり、今 2. Piniaは使いやすいまず、vite+vue+tsプロジェクトを初期化します pnpm create vite pinia-demo -- --template vue-ts piniaをインストールする pnpmとpinia プロジェクトを開き、srcディレクトリのmain.tsファイルを編集し、Piniaをインポートします。 //メイン.ts 'vue' から {createApp} をインポートします。 './App.vue' からアプリをインポートします。 'pinia' から {createPinia} をインポートします createApp(App).use(createPinia()).mount('#app')
'pinia' から {defineStore} をインポートします エクスポートconst useCounterStore = defineStore('counter', { 状態: () => { 戻る { カウント: 0, } }, ゲッター: { ダブルカウント: (状態) => 状態.count * 2、 }, アクション: { インクリメント() { this.count++ }, }, })
エクスポートconst useCounterStore = defineStore('counter', () => { 定数カウント = ref(0) 関数 doubleCount() { count.value * 2 を返す } 関数の増分() { カウント値++ } 戻り値 { count, increment } }) 次に <スクリプト設定 lang="ts"> './store/counter' から { useCounterStore } をインポートします。 定数useCounter = useCounterStore() </スクリプト> <テンプレート> <h2>{{ カウンタを使う }}</h2> <h2>{{ useCounter.count }}</h2> <h2>{{ useCounter.doubleCount() }}</h2> <button @click="useCounter.increment">増加</button> </テンプレート> <スタイル> #アプリ { フォントファミリー: Avenir、Helvetica、Arial、sans-serif; -webkit-font-smoothing: アンチエイリアス; -moz-osx-font-smoothing: グレースケール; テキスト配置: 中央; 色: #2c3e50; 上マージン: 60px; } </スタイル>
ブラウザは次のように実行されます。 開発者ツールを開いて
Pinia には状態を変更する複数の方法があります。
定数 countPlus_1 = useCounter.count++ オプションとコールバック関数の両方をサポートする const countPlus_2 = useCounter.$patch({ count: useCounter.count + 1 }) const countPlus_3 = useCounter.$patch((state) => state.count++) 状態構造には const { count } = storeToRefs(useCounter) 3. ユーザーエクスペリエンス
小規模なプロジェクトの場合、状態管理は利便性と速度を重視しているため(必要ない場合もあります)、vuex は少し複雑です。vue3 が Vuex の代わりに Pinia を使用した Vue 状態管理に関するこの記事はこれで終わりです。Vuex の代わりに Pinia を使用する方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: ウェブページの広告デザインにおけるウェブデザインの寸法とルール
>>: Baidu 入力メソッドが API を公開、自由に移植して使用できると主張
この axios パッケージは、vue3 デモで使用されます。便宜上、element-plus は ...
1. CLionをダウンロード、インストール、アクティベートするオンラインで提供されるチュートリアル...
この記事では、例を使用して、MySQL ユーザー権限を確認および管理する方法を説明します。ご参考まで...
ここで、アンカー ポイントを制御するいくつかの状況をまとめてみましょう。 1. 同じページ <...
オープンソース データベース アーキテクチャの設計原則01. 技術の選択最も使い慣れていて、最大限に...
実行後、一部の Docker コンテナが終了することがあります。原因を調べるには、Docker コン...
目次1. クロージャを使用する2. ES6クラスを使用する3. ES2020提案を使用する4. We...
@ ルールは、CSS の実行または動作に関する指示を提供する宣言です。各宣言は @ で始まり、その...
成果を達成する実装コードhtml <ヘッダー> <h1><em>...
目次1. classList属性2. 実用化以前の JavaScript では、最初にクラス属性を取...
コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...
ようやく手元のプロジェクトが終了し、行方不明だった人たちが戻ってきました!プロジェクトを進める過程で...
目次1 Baota Software StoreにDockerをインストールする2 ゴグスイメージを...
目次1. コンセプト2. 環境の説明3. マスタースレーブホットスタンバイ実装1. コンセプト1. ...
ウェブサイトを作成している際に、flv や MP4 形式などのビデオ ファイルはローカルでは正常に再...