我已经从状态中破坏了“密码”和“retypepassword”属性,现在尝试对它们应用条件,当我使用if和else语句时它的工作完全正常,但是当我使用三元运算符时它不起作用。我已经检查了三元运算符的格式和我写的一样,但现在仍在工作,请让我知道我做错了什么SubmitHandler = e => {
e.preventDefault();
const { password, retypepassword } = this.state;
// if (password === retypepassword) {
// console.log("password not match");
// } else console.log(this.state);
password === retypepassword
? return(console.log("form submitted"))
: "password does not match";
};
2 回答

犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
要匹配if/else
您的行为:
console.log(password === retypepassword ? "form submitted" : this.state);

莫回无
TA贡献1865条经验 获得超7个赞
三元运算符只能用于为变量赋值,换句话说,你不能将console.log(“something”)赋值给变量。实现此目的的一种方法是将字符串值赋给变量,并将其记录下来。所以在你的情况下,你可以这样做:
return password === retypepassword ? "form submitted" : "password does not match"; // and then log it out.
添加回答
举报
0/150
提交
取消