Mar*_*Miś 19 store nuxt.js vuejs3 nuxtjs3 pinia
有谁知道是否可以订阅 Pinia 中的特定操作?我知道有一种方法可以订阅所有操作,如下所示:
const subscribe = someStore.$onAction(callback, false)
Run Code Online (Sandbox Code Playgroud)
但这意味着我必须将操作名称与回调中我想要的操作名称进行比较,如下所示:
websocketStore.$onAction(
({name}) => {
if (name === 'specificAction') {
console.log('do something')
}
}
)
Run Code Online (Sandbox Code Playgroud)
所以我想知道是否有更好的方法?(我将 Pinia 与 Nuxt3 一起使用)
Vas*_*ski -1
可以使用 来观察操作及其结果
store.$onAction()。传递给它的回调在操作本身之前执行。处理承诺后,允许您在操作解析后执行函数。以类似的方式,onError允许您在操作抛出或拒绝时执行函数。
export default {
setup() {
const someStore = useSomeStore()
// this subscription will be kept even after the component is unmounted
someStore.$onAction(callback, true)
// ...
},
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3390 次 |
| 最近记录: |