【发布时间】:2020-03-30 10:11:05
【问题描述】:
我是 React 的新手,所以我需要你的帮助。
我有一个包含多个输入的组件,所以我必须验证它们。
提交按钮默认是禁用的,只有当输入不为空时,我才能提交。
如果我删除输入中的值,按钮应该回到禁用状态。
我的问题是,这个函数(验证函数)只有在我一步步进行时才在调试器中工作。
有人可以帮助我吗? 以下是我发现有助于理解我的问题的代码片段。
this.state = {
profile: newProfile,
disable: true,
};
let newProfile= {
firstName: "",
lastName: "",
nickname: "",
email: ""
};
validate = () => {
console.log(this.state)
debugger;
if (!this.state.profile.name || !this.state.profile.email) {
return false;
} else {
console.log("Profile name and email NOT BLANK")
console.log(this.state)
return true;
}
};
profileChange= ((target, value) => {
this.setState(prevState => {
let profile= this.state.profile;
profile[target] = value;
return {
profile: profile,
}
})
const isValid = this.validate();
if (isValid) {
console.log("valid inputs");
this.setState({disable: false});
}
else{
console.log("invalid inputs");
this.setState({disable: true});
}
});
【问题讨论】:
标签: javascript reactjs function validation