状态 state和属性 getters

在Vuex中,状态(state)和属性(getters)都用于【存储和获取】应用程序的数据,但它们有一些区别。

🤍🌹状态(state):状态是【存储应用程序数据】的地方,类似于组件中的data🤍🌹。它是一个普通的JS对象,可以通过this.$store.state来访问。状态是响应式的🍚,当状态发生变化时,相关的组件将自动更新视图。状态应该被看作是整个应用程序的单一数据源,因此它应该被看作是只读的,不能直接修改状态,而是通过提交mutations或分发actions来修改。

🤍🌹属性(getters):属性是【从状态中派生出来的值】,类似于组件中的计算属性🤍🌹。它是Vuex提供的一种对状态的包装和计算的机制,可以将一些常用或复杂的数据逻辑封装起来。属性是通过定义getters对象来创建的,每个getter都是一个函数,接收state作为参数,并返回一个新的值。可以通过this.$store.getters来访问属性。属性也是响应式的🍚,当状态发生变化时,相关的属性也会自动更新。

在区分状态和属性时,可以简单理解为状态是原始的数据存储,而属性是从状态中派生出来的计算结果。状态用于存储应用程序的核心数据,而属性用于对状态进行封装和计算,方便在组件中使用。通过使用属性,可以避免在组件中重复编写相同的逻辑,提高代码的可重用性和可维护性。

https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=bf1d309c19934fbfa8e2caf2f162529d

#前端面试必备宝典#
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务