对于常规的 HTTP 请求,我们可以使用 asyncData({error}){...} 创建重定向
我们应该使用什么来使用 Smart Query 重定向到 400 页面?
使用 Vue Apollo,我正在尝试使用
apollo: {
queryName: {
prefetch: true,
query: wrongQuery,
error(errorData) {
this.$nuxt.error({
statusCode: 500,
message: 'Error message',
});
},
},
};
如果我们重新加载页面,重定向不起作用。我们仍然得到一个错误,因为服务器端渲染:
使用全局错误处理程序,例如:
// /plugins/apollo-error-handler.js
export default ({ graphQLErrors, networkError, operation, forward }, nuxtContext) => {
console.log(networkError)
nuxtContext.error({
statusCode: 404,
message: 'Error message',
});
};
只有错误记录有效。重定向根本不起作用。
我们有什么方法可以处理智能查询中的错误,例如重定向到 400 页?
我们可以在智能查询中捕捉到这样的错误吗?像 try...catch... 在 asyncData() 中防止应用程序崩溃。
