Tengo un controlador de eventos de casilla de verificación para actualizar el estado del valor de casilla de verificación seleccionado. Pero ahora el CheckCampusItems no está definido. ¡Por favor avise! Gracias.

class CampusChk extends React.Component {
state = {checkedCampusItems: [] };
//event handler
handleCampusChkChange=(id,name,value, checked)=> { 
  // current array of options
  const checkedCampusItems = this.state.checkedCampusItems;
  let index;
  // check if the check box is checked or unchecked
  if (checked) {
    //add the name value of the checkbox to arrary
    checkedCampusItems.push(value);
  } else {
    // or remove the value from the unchecked checkbox from the array
    index = checkedCampusItems.indexOf(value);
    checkedCampusItems.splice(index, 1);
  }
  // update the state with the new array of options
  this.setState({checkedCampusItems: checkedCampusItems });
}

render(){
 return (
  <div>
   {campusData.map(item =>
      <label>{item.name}
   <input type="checkbox"  key={item.id} {...item} label={item.name} onChange={this.handleCampusChkChange} /> 
          </label>
  )
   }
   </div>   
  )
}
0
user788448 25 sep. 2019 a las 22:44

1 respuesta

La mejor respuesta

No le pasarás los argumentos a handleCampusChkChange

onChange={() => handleCampusChkChange(item.id, item.name, item.value, item.check)}
0
Dupocas 25 sep. 2019 a las 19:58