Random2356: Warum wird der state Wert nicht addiert in React?

Beitrag lesen

problematische Seite

Der Vollständigkeit halber: Du könntest den State durchaus direkt in den Cases der Switch-Anweisung ändern. Wie auf der vom Linksetzer verlinkten Seite beschrieben, müsste die handle-Funktion mit der angepassten setState-Anweisung dann so aussehen:

handle = () => {
    for (let val of ['a','b','c']) {
        let intAmount = 0;
        switch (val) {
          case "a":
            intAmount = 200;
            this.setState((state) => ({
                intBudget: state.intBudget + intAmount
            }));
            console.log(val);
            break;
          case "b":
            intAmount = 300;
            this.setState((state) => ({
                intBudget: state.intBudget + intAmount
            }));
            console.log(val);
            break;
          case "c":
            intAmount = 400;
            this.setState((state) => ({
                intBudget: state.intBudget + intAmount
            }));
            console.log(val);
            break;
          default:
            console.log("Default");
        }
      }