我可能不需要重构这段代码,但现在我只是好奇如何去做。
handleError: ({ error, email, password }, props) => authError => {
if (email === "" || password === "") {
return {
error: `Fields can't be empty`
};
} else {
return {
error: authError
};
}
}
这不提供与上面代码相同的功能:
handleError: ({ error, email, password }, props) => authError => {
email === "" || password === ""
? { error: `Fields can't be empty` }
: { error: authError };
}
最佳答案
您不需要任何返回。由于唯一的条件逻辑是消息,因此可以简化如下。
handleError: ({ error, email, password }, props) => (authError) => ({
error: email === "" || password === "" ? `Fields can't be empty` : authError
})
您可以将对象括在括号中而不是返回。
关于javascript - 如何用三元运算符重构它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51832530/