Skip to content

插件

参考:官网

可以把一些属性通过插件的形式添加到所有的store实例上,也可以添加新的方法,这些属性和方法在所有的store实例上都可以直接调用。

TIP

通过插件添加的属性只能在store实例中访问,在defineStore中是访问不到的

通过插件直接返回一个对象,这个对象上的属性可以在浏览器vue开发者工具直接看到属性,如果是手动添加的可以这样做

js
pinia.use(({store}) => {
    store.router = markRaw(router)
    // 添加到_customProperties属性上,这样开发者工具中就能看到router属性了
    store._customProperties.add('router')
})

示例

js
// 添加属性
const pinia = createPinia()

pinia.use(() => ({msg: 'ok'}))

// 使用
const userStore = useUserStore()
// 这里编辑器虽然没有提示,但是通过console.log(userStore)可以看到确实由msg属性
userStore.msg