我正在将Vue.js与Vue-Apollo一起使用,并启动 User 突变以登录用户。我正在使用 graph.cool 服务。
我有一个请求管道功能设置来捕获一些错误,例如无效的电子邮件。
当使用错误/无效输入发出请求时,我的错误catch()
会触发(如预期的那样),并且在网络选项卡中,我可以看到自定义错误消息的 JSON。但是,如果从 graph.cool 触发错误,我如何从 catch 中访问这些错误/响应?
例子:
signin () {
const email = this.email
const password = this.password
this.$apollo.mutate({
mutation: signinMutation,
variables: {
email,
password
}
})
.then((data) => {
// This never fires on an error, so I can't
// show the user the errors in the network repsonse.
console.log(data)
})
.catch((error) => {
// Error in this part fires in the console
// but I'm unable to show the JSON response
// errors because the 'then()' above doesn't execute.
console.error(error)
})
}
对于无法识别的用户,我收到以下错误:
错误:GraphQL 错误:在新 ApolloError (eval at (app.js:956), :34:28) at eval (eval at (app.js:1353), :139:33) at
知道如何从内部显示响应中的错误catch()
吗?
我可以从字面上看到我想在网络选项卡上的响应中向用户显示的错误:
...但我不知道该怎么做。
非常感谢任何帮助!谢谢你。