Angular geschachteltes json-Objekt verändern

Panda9296

Bekanntes Mitglied
Hi Leute ich habe 2 Fragen: Die erste Frage bezieht sich auf mein Objekt, dass ich auslesen möchte:
1613752445371.png
das ist ein einzelnes Objekt(habe viel viel mehr davon :D... so das auslesen dieses Objektes klappt super...
Javascript:
//service
getAllCardsFromHttp(topic:string){
    return this.httpClient.get<LearningCard[]>(`${this.ROOT_URL_CARDS}/${topic}`);
  }

// wo ich die daten extraiere: Ich hol mir den key also übergebe ihn der url und hole sie mir
 ngOnInit(): void {
    this.$subscription = this.activatedRoute.queryParams.subscribe(key => {
      this.topicKey = key["topicKey"];
      this.topicService.getAllCardsFromHttp(this.topicKey).subscribe(cards=>{
       this.learningCards=cards["cards"]  //<===========================================
      });
    });
  }
Ich muss quasi dann eine Ebene tiefer zu cards um an das gewünschte Objekt ranzukommen. Wie mache ich das aber wenn ich sie ändern möchte...
1613752688513.png
damit habe ich es geschafft meine daten komplett zu löschen... klar ich habe das komplette Objekt ersetzt... Ich verstehe nicht was ich hier benötige.. ich brauch doch irgendwas in der url?


======
zweite frage... wenn ich meine Karten anzeige sieht das so aus:
1613752766989.png
mit ng for durchlaufe ich das array, indem die karten drin sind die ich möchte... aber ich würde gerne das steuern und bekomme das nicht hin, dass nur bei einem click event die nächste karte angezeigt wird(dabei soll natürlich nur eine angezeigt werden) danke für eure hilfe
 

thecain

Top Contributor
Also... erstens würde ich nicht wenn möglich nicht subscriben:
Javascript:
ngOnInit(): void {
    this.topicKey$ = this.activatedRoute.queryParams.pipe(map(key => key.topicKey));
  

this.learningCards$ = this.topicKey.pipe(
        switchMap(key => this.topicService.getAllCardsFromHttp(this.topicKey).pipe(
            cards => cards.cards
        )
        ));
  }

Dann kannst du im Code mit der async pipe arbeiten und musst dich nicht um unsubscribe kümmern.

Nur eines anzuzeigen, könntest du dann mit einem Subject lösen, z.B.
Java:
elementToShow$ = new BehaviorSubject<number>(1);

activeCard$ = combineLatest([this.learningCards$, this.elementToShow]).pipe(
    map(([allCards, elementToShow]) => allCards[elementToShow])
);

Darauf kannst du auch mit der Async pipe subscriben... Bei einem Klick auf next, kannst du das subject updaten, was dann zu einem Update des Streams führt.

Wenn man ein Framework, wie z.b. Angular einsetzt, macht es einem viel einfacher, wenn man die Paradigmen des Frameworks versucht möglichst umzusetzen.

Sämtlicher Code ohne gewähr, einfach runtergeschrieben im Editor hier.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Angular Anzeigen von x Boxen die in Array gespeichert werden Angular, React, JQuery - Fragen zu JavaScript 0
R Angular: Tabelle erhält nicht alle Zeilen Angular, React, JQuery - Fragen zu JavaScript 2
G suggest best resources to learn Angular Angular, React, JQuery - Fragen zu JavaScript 0
R Probleme mit Angular | Gängige Strukturen und Herangehensweisen Angular, React, JQuery - Fragen zu JavaScript 3
K Von Angular auf Server Variable zugreifen Angular, React, JQuery - Fragen zu JavaScript 3
Svensen Angular Material table dynamische Spalten Angular, React, JQuery - Fragen zu JavaScript 0
D Angular/React/Vue Angular, React, JQuery - Fragen zu JavaScript 1
P Typescript und Angular Angular, React, JQuery - Fragen zu JavaScript 4
ruutaiokwu JavaScript in Angular 8-Anwendung verwenden Angular, React, JQuery - Fragen zu JavaScript 11
E Angular ab 2+ in bestehende Webapp einbinden Angular, React, JQuery - Fragen zu JavaScript 0
R Angular 4 vs 7 Angular, React, JQuery - Fragen zu JavaScript 9
P Angular vor JavaScript lernen? Angular, React, JQuery - Fragen zu JavaScript 1
Zeppi Javascript JSON in ein Array Angular, React, JQuery - Fragen zu JavaScript 1
Cellsplitter Api auslesen und in Json Datei speichen - Javascript (node js) Angular, React, JQuery - Fragen zu JavaScript 10
L JSON-Daten aus einen Server mit fetch holen Angular, React, JQuery - Fragen zu JavaScript 3
N Antworten einer Quizfrage aus der Json Datenbank mappen Angular, React, JQuery - Fragen zu JavaScript 25
pkm Frage: Uncaught SyntaxError: JSON.parse: expected property name or '}' Angular, React, JQuery - Fragen zu JavaScript 5
M JSon aus FireFox verschicken und empfangen. Angular, React, JQuery - Fragen zu JavaScript 2
P Richtiges Auslesen von mehreren Daten im JSON Format via JavaScript Angular, React, JQuery - Fragen zu JavaScript 2
F JSON Datei in JavaScript einbinden Angular, React, JQuery - Fragen zu JavaScript 1

Ähnliche Java Themen

Neue Themen


Oben