pinia基本使用

目录

读state

state 

 写state

 方式一:【修改单个数据时推荐】

 方式二:$patch({})   【不推荐】

方式三:$patch((state)=>{})   【修改多个数据时推荐】

方式四:$state

 方式五:action  【修改多个数据时推荐】 

action

同步

异步

getters

内置api函数

$reset()

$subscribe

$onAction


下载:

npm i -S pinia

main.js中引入pinia: 

pinia基本使用_第1张图片

import { createApp } from 'vue'
import './style.css'
import App from './App.vue'

import { createPinia } from "pinia"
createApp(App).use(createPinia()).mount('#app')

读state

pinia基本使用_第2张图片

pinia基本使用_第3张图片

import { defineStore } from "pinia";

export const useTestStore = defineStore('Test', {
    state: () => {
        return {
            user: '张三',
            age: 33
        }
    },
    getters: {
    },
    actions: {
    }
})

state 

 写state

 方式一:【修改单个数据时推荐】

pinia基本使用_第4张图片

 方式二:$patch({})   【不推荐】

pinia基本使用_第5张图片

方式三:$patch((state)=>{})   【修改多个数据时推荐】

pinia基本使用_第6张图片

方式四:$state

pinia基本使用_第7张图片

 方式五:action  【修改多个数据时推荐】 

pinia基本使用_第8张图片

state解构-storeToRefs

需要使用storeToRefs()才能是响应式

pinia基本使用_第9张图片






 

action

同步

pinia基本使用_第10张图片

异步

pinia基本使用_第11张图片

getters

pinia基本使用_第12张图片

内置api函数

$reset()

state重置为初始化状态

pinia基本使用_第13张图片

$subscribe

state中的值一改变就会触发

pinia基本使用_第14张图片

pinia基本使用_第15张图片

$onAction

$onAction函数接受一个回调函数,该回调函数内部的代码会先于actions函数调用前执行

 after钩子函数会在actions中的函数被调用后执行

pinia基本使用_第16张图片pinia基本使用_第17张图片 

你可能感兴趣的:(pinia,pinia)