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 を公開、自由に移植して使用できると主張
まず、仮想マシンを開きます xshell5 を開いて仮想マシンに接続します (より便利です。Linu...
目次getApp()ページエントリファイルの先頭に変数を定義しますwx.createSelector...
目次1. 開発環境2. dockerプラグインをインストールする1. アイデアのインストール2. イ...
一部のWebサイトでアップロードする場合、「参照」ボタンをクリックすると、[ファイルの選択]ダイアロ...
マウスが画像の上を通過したときに画像のハイパーリンクを変更する方法:コードをコピーコードは次のとおり...
出典: http://www.ruoyi.vip/ 'vue' から Vue をイン...
目次1. コアコマンド2. 共通コマンド3. コアコマンドの詳細な説明3.1、ps補助3.2 トップ...
目次質問サーバー層とストレージエンジン層LIMITって何ですか?何をするか?トゥカオ最近、Q&...
以下のコードはすべて <head>...</head> の間にあり、具体的な...
序文プロジェクトの要件は、ユーザーの現在の位置が特定の地理的位置範囲内にあるかどうかを判断することで...
1. ホストMacbookにHOSTをセットアップする前回のドキュメントでは仮想マシンの静的 IP ...
ページをナビゲートする2つの方法宣言型ナビゲーション: リンクをクリックしてナビゲーションを実現する...
目次序文メタデータとは参照文書アドレスまずはMySQLについてお話しましょうOracleについて話し...
JS の async 関数と await キーワード 関数ヘルワールド() { 「こんにちは!美しい...
序文運用・保守を行う人がスキルを持っていなければ、サーバーを操作するのに恥ずかしさを感じてしまうと言...