petla dodaje do tablicy tylko ostani element

petla dodaje do tablicy tylko ostani element
DC
  • Rejestracja:ponad 6 lat
  • Ostatnio:około 9 godzin
  • Postów:325
0
Kopiuj
state = {
history2:[]
}

Dlaczego pokazywany jest tylko ostatni element zamiast wszystkich? Tablica history2 pokazuje mi tylko ostatni element a warunek zawiera wiecej elementow

Kopiuj
 for (const point of this.state.idRt) {
      if (id === point.RouteId) {
        this.setState({
          history2: {
            Name: point.Name,
          }
        })
      }
    }
AS
AS
  • Rejestracja:prawie 8 lat
  • Ostatnio:ponad 3 lata
  • Postów:17
1

Utwórz nową tablicę, w pętli przy każdej iteracji jeśli jest spełniony warunek dodaj obiekt do tej tablicy a setState użyj na samym końcu przypisując tą tablicę do history2.

Kopiuj
const newHistory2 = [];

for (const point of this.state.idRt) {
  if (id === point.RouteId) {
    newHistory2.push({
      Name: point.Name,
    });
  }
}

this.setState({
  history2: newHistory2
});
edytowany 1x, ostatnio: aszczepanowski

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.