我正在尝试更新用户'我在事件发布到PasswordUpdated
频道时检索过的密码。这是我到目前为止所尝试的,
this.apollo.subscribe({
query: this.passwordUpdatedSubscription
}).subscribe(({passwordUpdated}:any) => {
this.userDataQuery.updateQuery((previousResult) => {
previousResult.getUsers.filter(user => user.name === passwordUpdated.name).forEach(user => user.password = passwordUpdated.password);
});
});
但是,我刚从控制台中的错误中发现previousResult
是不可变的。当我尝试更新previousResult
中的密码时,该媒体资源为writable: false
。我该如何解决这个问题?
答案 0 :(得分:0)
您必须返回更改的先前结果。查看subscription docu了解apollo客户端。下面是更新查询的点。
您可能需要查看reacts immutability helper,其中解释了问题所在。