首页 文章

我什么时候应该使用组件数据而不是vuex状态?

提问于
浏览
5

据我所知,vuex状态使用的最佳样本是可以由不同组件使用的购物车,或者vuex可以存储auth设置 .

但是,如果我有基于vue-router页面的SPA呢?我应该将页面数据存储在vuex状态还是component.data是否足够好?

例如,我有以下页面的SPA:

/users/
/user/:id
/user/edit/:id

对于/ user /:id我有以下组件结构:

<UserDetailsPage>
    <Address :address="user.billingAddress"/>
    <UserGroupsList :user-groups="user.groups" />
</UserDetailsPage>

UserDetailsPage从API检索数据并将用户数据对象存储在data()中 . 像 AddressUserDetailsPage 这样的组件从道具中获取所需的所有数据,只显示数据 .

将用户存储在页面组件中是一个好主意吗?

1 回答

  • 7

    根据我的理解,当您需要在兄弟组件之间进行通信或传递数据时,或者如果一个组件中的数据更改(例如布尔更改)触发另一个组件的更改时,Vuex状态管理就会发挥作用 .

    例如,如果您想要存储用户的联系人或产品信息,并在结帐过程中将其呈现在单独的组件上,则Vuex会很有用 . 但是,如果您只是为独立组件渲染数据,那么使用组件数据(使用简单指令绑定或从API获取)就可以了 .

    通常,当您真正需要使用状态时,它就会变得明显 .

相关问题