首页 > 解决方案 > 为什么三元运算符不在状态属性上工作

问题描述

我已经从状态中破坏了“密码”和“重新输入密码”属性,现在尝试对它们应用条件。当我使用 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";
  };

标签: javascriptreactjsstateternary-operator

解决方案


为了匹配if/else你会做的行为:

console.log(password === retypepassword ? "form submitted" : this.state);

推荐阅读