javascript - Vuex store WATCH 和 SUBSCRIBE 的区别
问题描述
我应该使用一个和另一个watch
之间的主要区别是什么?subscribe
从Vuex 官方文档看来,这两种方法都在做同样的事情并服务于相同的目的,两种方法都可以访问该state
对象。
我现在的状态如下:
item: (state: any) => state.item
我也有一个动作来提交一个突变来改变 的值item
,现在我想知道item
其他组件中的新值,我应该使用哪个?watch
还是subscribe
?
解决方案
item
如果您想在值更改时做某事,使用watch
就足够了。
但是,如果您想知道item
具体是如何更改的,则需要访问该mutation
对象(其中包括type
of 突变、thepayload
等)。在这种情况下,您可以使用subscribe
.
一个示例可能是您item
在 2 个或更多突变中发生了突变,而您只想知道item
何时mutation1
更改它的值。
编辑:我还没有尝试过,但我认为 usingsubscribe
会在商店中的任何东西发生突变时调用你的函数。
推荐阅读
- dart - 如何在颤动中更改推送通知图标的颜色?
- python - 剪掉程序中的代码,让它更整洁
- python - 无法在代码中调用 Google Chrome 的位置
- python - How to echo hex from python
- xamarin - How to use a relative path in XDocument.Load with Xamarin?
- javascript - 打字稿如何声明一个返回它被调用的对象的方法(this)
- python - 如何将 pipenv 添加到我的 .zshrc 中的 PATH
- ios - 测验的故事板版本
- windows - How to open a file in lua
- c# - 无法使用 Angular 7、.net core 2.2 从 HttpClient POST 方法获取响应