MERN 3 React Js – USESTATE

Aggiornamento di una variabile di stato UseState

function handleChange(event) {
        const { name, value } = event.target;
        setInput(prevInput => {
            return {
                ...prevInput,
                [name]: value
            }
        })
    }
 

usestate Variabile False True

props.set_cambio_stato1(current => !current)
 

usestate Incremento numero

props.setKey (prevState => prevState - 1)
 

usestate aggiungere un elemento ad un array PUSH oppure UNSHIFT

var lista_aux = props.lista_materie
lista_aux.unshift({ materia: valore, accesa: true, colore_bordo: 'solid red' })
props.SET_lista_materie([... lista_aux])
 

usestate aggiornamento di singoli elementi

const [lista_variabili, set_lista_variabili] = useState(props.item.variabili_calcoli)
   
let newArr = [...props.lista_domande_render]; // copying the old datas array
//        newArr[props.index].materia_id = item_id; // replace e.target.value with whatever you want to change it to
newArr[props.index].indice_end = indice_end;
newArr[props.index].indice_aux = -indice_end -1;
newArr[props.index].indice_now = -indice_end;
props.SET_lista_domande_render(newArr);
 

usestate passare variabili allo stato iniziale di usestate

const [lista_variabili, set_lista_variabili] = useState(props.item.variabili_calcoli)

  useEffect(() => {
        // This effect uses the `value` variable,
        // so it "depends on" `value`.
        set_lista_variabili(props.item.variabili_calcoli)
    }, [props.item.variabili_calcoli])
 

usestate cambiare due variabili in un oggetto

USESTATE

        setInput(prevInput => {
            return {
                ...prevInput,
                ['domanda']: props.item.domanda,
                ['risposta']: props.item.risposta
            }
        })

usestate cambiare una sola variabile in un oggetto

let updatedValue = {};
updatedValue = {"solo_mp3":true};
props.setinput_opzioni(prevInput => ({
    ...prevInput,
    ...updatedValue
}))
 

Base