最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue狀態(tài)管理庫Pinia詳細介紹

 更新時間:2022年08月16日 11:13:45   作者:賢蛋大眼萌  
這篇文章主要介紹了Vue3-pinia狀態(tài)管理,pinia是 vue3 新的狀態(tài)管理工具,簡單來說相當于之前 vuex,它去掉了 Mutations 但是也是支持 vue2 的,需要的朋友可以參考下

什么是 Pinia

Pinia (西班牙語中的菠蘿),本質上依然是一個狀態(tài)管理的庫,用于跨組件、頁面進行狀態(tài)共享.

pinia 與 vuex 的區(qū)別:

  • 更友好的TypeScript支持,Vuex之前對TS的支持很不友好
  • 與 Vuex 相比,Pinia 提供了一個更簡單的 API,具有更少的儀式,提供了 Composition-API 風格的 API
  • 不再有modules的嵌套結構
  • 也不再有命名空間的概念,不需要記住它們的復雜關系

如何使用 Pinia

安裝 pinia

yarn add pinia

創(chuàng)建一個pinia

// src/stores/index.js
import { createPinia } from "pinia";
const pinia = createPinia()
export default pinia
//main.js
import pinia from './stores'
app.use(pinia)

認識 Store

一個 Store (如 Pinia)是一個實體,它會持有為綁定到你組件樹的狀態(tài)和業(yè)務邏輯,也就是保存了全局的狀態(tài)

這樣就可以定義任意數(shù)量的Store來管理你的狀態(tài),包括 state、getters、actions

定義一個store

  • Store 是使用 defineStore() 定義的,
  • 且它需要一個唯一名稱,作為第一個參數(shù)傳遞

使用 store

操作 State

state 是 store 的核心部分,store是用來實現(xiàn)我們管理狀態(tài)的。

  • 方式一:直接一個個修改state
  • 方式二:一次性修改多個狀態(tài)
  • 方式三:替換state
  • 方式四:重置state

Getters

1. 認識和定義 Getters

Getters相當于Store的計算屬性:

  • 可以用 defineStore() 中的 getters 屬性定義;
  • getters中可以定義接受一個state作為參數(shù)的函數(shù);

2. 訪問 Getters

  • 方式一:訪問當前 store 的Getters
  • 方式二:Getters 中訪問自己的其他Getters
  • 方式三:訪問其他的 store 的Getters
getters: {
    // 1. 基本使用
    debouleCount(state) {
      return state.count * 2
    },
    // 2. 一個 getters 引入另外一個 getters
    useDebouleCount() {
      return this.debouleCount + 2
    },
    // 3. getter也支持返回一個函數(shù)
    getFriendById(state) {
      return function (id) {
        for (let i = 0; i < state.vagetabel.length; i++) {
          const vagetabel = state.vagetabel[i]
          if (vagetabel.id === id) {
            return vagetabel
          }
        }
      }
    },
    // 4.訪問其他store中的Getters
    showMessage(state) {
      // 獲取user信息
      const useStore = useUser()
      // 獲取自己的state
      // 拼接信息
      return `name:${useStore.name} - count:${state.count}`
    }
  }

認識和定義 Action

Action 可以理解成組件中的 methods ,和getters一樣,在action中可以通過this訪問整個store實例的所有操作。

Action 是支持異步操作的,所以可以使用 await。

到此這篇關于Vue狀態(tài)管理庫Pinia詳細介紹的文章就介紹到這了,更多相關Vue Pinia內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 在vue中使用防抖和節(jié)流,防止重復點擊或重復上拉加載實例

    在vue中使用防抖和節(jié)流,防止重復點擊或重復上拉加載實例

    今天小編就為大家分享一篇在vue中使用防抖和節(jié)流,防止重復點擊或重復上拉加載實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • vue環(huán)境變量配置之process.env解讀

    vue環(huán)境變量配置之process.env解讀

    這篇文章主要介紹了vue環(huán)境變量配置之process.env解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Vue3源碼分析組件掛載創(chuàng)建虛擬節(jié)點

    Vue3源碼分析組件掛載創(chuàng)建虛擬節(jié)點

    這篇文章主要為大家介紹了Vue3源碼分析組件掛載創(chuàng)建虛擬節(jié)點,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • vue?中使用?bimface詳情

    vue?中使用?bimface詳情

    這篇文章主要介紹了vue?中使用?bimface詳情,分別有安裝?vue?腳手架、創(chuàng)建項目、引入?bimface?響應的文件、修改?App.vue?文件,實現(xiàn)頁面渲染等步驟,需要的小伙伴可以參考一下
    2021-12-12
  • 從零開始實現(xiàn)Vue簡單的Toast插件

    從零開始實現(xiàn)Vue簡單的Toast插件

    這篇文章主要給大家介紹了如何從零開始實現(xiàn)Vue簡單的Toast插件的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-12-12
  • 基于vue2.0+vuex+localStorage開發(fā)的本地記事本示例

    基于vue2.0+vuex+localStorage開發(fā)的本地記事本示例

    這篇文章主要介紹了基于vue2.0+vuex+localStorage開發(fā)的本地記事本示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • VueJS 組件參數(shù)名命名與組件屬性轉化問題

    VueJS 組件參數(shù)名命名與組件屬性轉化問題

    這篇文章主要介紹了VueJS 組件參數(shù)名命名與組件屬性轉化問題,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-12-12
  • vue左右滑動選擇日期組件封裝的方法

    vue左右滑動選擇日期組件封裝的方法

    這篇文章主要為大家詳細介紹了vue左右滑動選擇日期組件封裝的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue動態(tài)子組件的兩種實現(xiàn)方式

    vue動態(tài)子組件的兩種實現(xiàn)方式

    這篇文章主要介紹了vue動態(tài)子組件的兩種實現(xiàn)方式,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • vue?動態(tài)添加el-input的實現(xiàn)邏輯

    vue?動態(tài)添加el-input的實現(xiàn)邏輯

    這篇文章主要介紹了vue?動態(tài)添加el-input的實現(xiàn)代碼,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06

最新評論

保康县| 韶关市| 团风县| 镇康县| 拜城县| 彝良县| 镇巴县| 新龙县| 孟津县| 嫩江县| 鄂温| 永安市| 太康县| 许昌县| 墨江| 托里县| 长春市| 彭山县| 邢台县| 罗平县| 永顺县| 普洱| 六安市| 绥江县| 塔城市| 黄浦区| 靖宇县| 高州市| 江永县| 云阳县| 八宿县| 称多县| 浮山县| 扎赉特旗| 南丹县| 石林| 白沙| 营山县| 微山县| 酉阳| 江口县|