pinia基本使用(四)の仓库互调用&重置仓库
仓库互调用
- 理解: 在仓库中引入另一个仓库实例化后进行调用
index.ts import {defineStore,storeToRefs} from 'pinia' // 引入另一个仓库 import {effStore} from './eff' type numbers={ count: any } export const mainStore=defineStore('main',{ state: () => { return <numbers>{ count: 0 } }, getters: {}, actions: { changeV(v: number) { // 在这里对引入的仓库进行实例化,可以直接相互调用 const {num}=effStore() this.count=this.count+num } } }) eff.ts import {defineStore} from 'pinia' type v={ num: Number } export const effStore=defineStore('eff',{ state: () => { return <v>{ num: 5 } } })
仓库的重置
定义: 使用仓库实例上的$reset方法,将仓库数据全部初始化
<script setup lang="ts">
import { mainStore } from './store/index'
import { storeToRefs } from 'pinia'
const store = mainStore()
const { count, countDouble } = storeToRefs(store)
const foo = () => {
store.changeV(3)
}
const reset = () => {
// 仓库实例上调用重置方法
store.$reset()
}
</script>
<template>
<h1>{{ count }}</h1>
<h2>{{ countDouble }}</h2>
<button @click="foo">点击</button>
<button @click="reset">重置</button>
</template>
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!