“Mettre à jour l'objet dans l'état du tableau réagir” Réponses codées

réagir comment mettre à jour le tableau d'état

const initialState = [
    { name: "foo", counter: 0 },
    { name: "far", counter: 0 },
    { name: "faz", counter: 0 }
  ];

const [state, setState] = useState(initialState);

const clickButton = () => {
	// 1. Make a shallow copy of the array
	let temp_state = [...state];
	
	// 2. Make a shallow copy of the element you want to mutate
	let temp_element = { ...temp_state[0] };
	
	// 3. Update the property you're interested in
	temp_element.counter = temp_element.counter+1;
	
	// 4. Put it back into our array. N.B. we *are* mutating the array here, but that's why we made a copy first
	temp_state[0] = temp_element;
	
	// 5. Set the state to our new copy
	setState( temp_state );
}
Annoyed Aardvark

réagir le tableau d'état de mise à jour natif d'objets

let markers = [ ...this.state.markers ];
markers[index] = {...markers[index], key: value};
this.setState({ markers });
Blue Beetle

Mettre à jour l'objet dans l'état du tableau réagir

const handleAdd = (todo) => {
  const newTodos = [...todos];
  newTodos.push(todo);
  setTodos(newTodos);
}
Grieving Gharial

réagir le tableau d'état de mise à jour natif d'objets

let newMarkers = markers.map(el => (
      el.name==='name'? {...el, key: value}: el
))
this.setState({ markers });
Blue Beetle

Mettre à jour l'objet à l'état du tableau par index

this.setState(({items}) => ({
    items: [
        ...items.slice(0,1),
        {
            ...items[1],
            name: 'newName',
        },
        ...items.slice(2)
    ]
}));
Dark Dolphin

Réponses similaires à “Mettre à jour l'objet dans l'état du tableau réagir”

Questions similaires à “Mettre à jour l'objet dans l'état du tableau réagir”

Plus de réponses similaires à “Mettre à jour l'objet dans l'état du tableau réagir” dans JavaScript

Parcourir les réponses de code populaires par langue

Parcourir d'autres langages de code