我试图用参数创建一个函数,并从reactJS中的另一个函数调用它

时间:2017-03-05 02:14:44

标签: javascript reactjs

这是我的代码但是验证用户将无法正常工作我不知道为什么会无效

errorLog(props){
    if (props.errors) {
        return (
            <div className="alert alert-danger" role="alert">
                <p>{props.message}</p>
            </div>
        )
    }else{
        return null
    }
}

verifyUser(){
    const username = this.refs.username.value;
    const password = this.refs.password.value;

    if(!username || !password) {
       // this.setState({error: true})

        this.errorLog({errors:true})

    }
}

1 个答案:

答案 0 :(得分:0)

如果您希望在验证中发生错误时出现警报,则需要使用html结束渲染功能。

class Alert extends React.Component {
  errorLog(errObj) {
    if (errObj.errors)
      return <div>ALERT</div>;
  }

  verifyUser() {
    // ... do some verification

    const err = this.errorLog({ errors: true });

    return err;
  }

  render() {
    const err = this.verifyUser();
    return err;
  }
}

这是一个JSBin来展示这个:

http://jsbin.com/rakerif/edit?html,js,output