如何在成功请求 alt.js 中的源后更新状态?
How to update state after successful request with sources in alt.js?
我是 alt.js 的新手,对更新成功处理程序中的状态有疑问。
假设我有一个 UserStore 并想删除一个用户。
我使用应该删除的用户的 id
触发删除用户操作。源向后端发送带有 id
的删除请求。请求有效,来源触发成功操作。
如何从成功操作处理程序中的 StoreState 中删除用户,因为我没有获得 ID 或任何其他有关已通过的请求的信息?
您可以使用interceptResponse function
所以,基本上,您的数据源中应该有这样的结构:
deleteUser: {
remote (state, id) {
//Some backend call here
},
interceptResponse (data, action, args) {
// Here you can access arguments, that were passed to the remote method
// via 'args' argument. What you return from this function will be passed
// to further callbacks (success, error, etc.)
return {data: data, id: args[0]};
}
}
因此,在这种情况下,使用远程调用返回的数据,您还将把原始 ID 传递给回调,并且能够从您的商店中删除用户。
我是 alt.js 的新手,对更新成功处理程序中的状态有疑问。
假设我有一个 UserStore 并想删除一个用户。
我使用应该删除的用户的 id
触发删除用户操作。源向后端发送带有 id
的删除请求。请求有效,来源触发成功操作。
如何从成功操作处理程序中的 StoreState 中删除用户,因为我没有获得 ID 或任何其他有关已通过的请求的信息?
您可以使用interceptResponse function
所以,基本上,您的数据源中应该有这样的结构:
deleteUser: {
remote (state, id) {
//Some backend call here
},
interceptResponse (data, action, args) {
// Here you can access arguments, that were passed to the remote method
// via 'args' argument. What you return from this function will be passed
// to further callbacks (success, error, etc.)
return {data: data, id: args[0]};
}
}
因此,在这种情况下,使用远程调用返回的数据,您还将把原始 ID 传递给回调,并且能够从您的商店中删除用户。