Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将变量声明为多个状态值_Javascript_Reactjs - Fatal编程技术网

Javascript 将变量声明为多个状态值

Javascript 将变量声明为多个状态值,javascript,reactjs,Javascript,Reactjs,可能是个很基本的问题,但我想不出来。我有一个表单,它使用以下变量作为状态,返回true/false: ccValid, dateValid, cvvValid, nameValid, addressValid 我想要一个等于所有这些的变量 前 您可以将所有这些变量存储在状态中的单个对象中。比如说, 类FormComponent扩展了React.Component{ 建造师(道具){ 超级(道具); 此.state={ 验证:{ ccValid:false, dateValid:false, c

可能是个很基本的问题,但我想不出来。我有一个表单,它使用以下变量作为状态,返回true/false:

ccValid, dateValid, cvvValid, nameValid, addressValid
我想要一个等于所有这些的变量


您可以将所有这些变量存储在状态中的单个对象中。比如说,

类FormComponent扩展了React.Component{
建造师(道具){
超级(道具);
此.state={
验证:{
ccValid:false,
dateValid:false,
cvvValid:false,
nameValid:false,
addressValid:false,
}
}
}
}
例如,当需要访问每个变量时,可以从状态中分解
validations
属性

const{validations}=this.state;
//您可以访问validations.ccValid、validations.dateValid等。

让我知道这是否解决了问题,或者您正在寻找完全不同的东西。

如果您的意思是想要一个可以随时读取的
布尔
变量来了解表单的当前有效性状态,定义为表单的属性
ccValid
dateValid
cvvValid
nameValid
addressValid
都等于
true
,您可以在表单中添加
getter

Object.defineProperty(形式为'valid'{
get:function(){返回this.ccValid&&this.dateValid&&this.cvvValid&&this.nameValid&&this.addressValid;}
});
console.log(form.valid);//始终记录当前窗体状态
const formValid = {ccValid, dateValid, cvvValid, nameValid, addressValid} = this.state