在使用中处理错误的最佳方法是什么突变钩子



我正在使用graphql来完成我的工作,在我的一个用例中,我正在使用useMutation hook进行添加,插入或删除等突变。

所以在这里我有输入字段和按钮,所以点击我想将数据保存在工作正常的数据库中,

我的主要观点是处理使用中react-apollo-graphql错误的最佳方法是什么突变

目前我正在使用承诺处理错误,但我知道这不是最好的方法

我正在做的是

const [createDep, {loading,error}] = useMutation(ADD_DEPARTMENTS,{  // here this error I want to do something here ton handle error and loading
update(_,result){
console.log(result)
}
})
const submitDepartment = (e) => { 
let dept_name = e.department
console.log(dept_name)
createDep({
variables: { dept_name },
}).catch((res) => {   // I do not think This is the right way to do
const errors = res.graphQLErrors.map((error) => {
console.log(error.message);
});
});
};

我只是把它包装在一个尝试/捕获范围内:

const [createDep] = useMutation(ADD_DEPARTMENTS, {     
update(_,result){
console.log(result)
}
})
const submitDepartment = async (e) => { 
let dept_name = e.department
try {
await createDep({variables: {dept_name}})
} catch (err) {
// handle error here
}
};

最新更新