Vuex在CRUD操作之后更新状态的方法

时间:2018-09-29 15:53:05

标签: vue.js vuex

假设我有一个名为fetchBooks的Vuex动作(该动作将SETBOOKS突变以更改状态)检索到的书籍集合。

当我发送动作remove来删除一本书时,我有两个选择:

1)向API发送请求以删除资源,然后分派fetchBooks重新加载图书清单。

2)向API发送请求以删除资源,然后进行REMOVE更改以将该书从状态中删除,而无需任何其他HTTP请求。

第一个似乎更容易,我可以使用相同的技术进行添加/更新/删除,但要付出额外的请求来重新加载清单。

第二个更便宜(没有额外的请求),但是需要更多的逻辑来处理每个添加/更新/删除案例的状态。

正确的方法是什么?

1 个答案:

答案 0 :(得分:1)

我会选择选项2。 在一般情况下,“ getBooks”可能是一个巨大的数组,最好不要在本地已有数据库时从数据库中重新查询数据。

请确保您要在尝试捕获块中删除这本书,因此,如果删除没有在后端进行,您应该提醒用户。