1. NachfrageDas Backend stellt solche Daten bereit, damit das Frontend sie in eine Baumstruktur (ohne doppelte Daten) konvertieren kann. Schauen wir uns ohne weitere Umschweife zunächst an, welche Art von Array-Daten gegeben sind und in welche Art von Baumstruktur sie konvertiert werden. Das vom Server gesendete Array Konstanten arr = [ [ {"deptId":"D019", "deptName":"Verkaufsabteilung"}, {"deptId":"D019101", "deptName":"Verkaufszentrum Nordchina"} ],[ {"deptId":"D083", "deptName":"Musikabteilung"} ],[ {"deptId":"D027", "Abteilungsname":"Hangzhou Forschungsinstitut"}, {"deptId":"D027048", "deptName":"Technische Abteilung"}, {"deptId":"D027048002", "Abteilungsname": "Projektmanagementzentrum"} ],[ {"deptId":"D027", "Abteilungsname":"Hangzhou Forschungsinstitut"}, {"deptId":"D027048", "deptName":"Technische Abteilung"} ],[ {"deptId":"D027", "Abteilungsname":"Hangzhou Forschungsinstitut"}, {"deptId":"D027048", "deptName":"Technische Abteilung"} ] ] Schließlich umgewandelt in Konstanten arr = [ { Abteilungs-ID: "D019", deptName: 'Verkaufsabteilung', Kinder: [{ Abteilungs-ID: 'D019101', deptName: 'Verkaufszentrum Nordchina', Kinder: [], }] }, { Abteilungs-ID: 'D083', deptName: 'Musikabteilung', Kinder: [] }, { Abteilungs-ID: 'D027', Abteilungsname: „Hangzhou Research Institute“, Kinder: [{ Abteilungs-ID: 'D027048', deptName: 'Technische Abteilung', Kinder: [{ Abteilungs-ID: 'D027048002', deptName: 'Projektmanagement-Center', Kinder: [] }] }] }, ] 2. Code (entwickelt in reactHooks)const [treeData, setTreeData] = useState([]); console.log(treeData); //treeData ist die endgültige erforderliche Baumstruktur (in meinem lokalen Browser gedruckt ist korrekt) useEffect(() => { :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::3s::::::333:33333333333333333333ag33333333333333333333333333333 es333333333333333333333333333333 es33 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann dann dann dann aber33333333333333333333 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 dann3 dann3 aber3 dann3 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann nichtie dasen aber aber abersossoss aberstens aberstensss aberten aber abers :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::3s::::::333:33333333333333333333ag33333333333333333333333333333 es333333333333333333333333333333 es33 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann dann dann dann aber33333333333333333333 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 dann3 dann3 aber3 dann3 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann nichtie dasen aber aber abersossoss aberstens aberstensss aberten aber abers ::::::::::: const arr = JSON.parse(str).flat(); //Abflachen let newArr = []; keineWiederholung(arr).Länge und keineWiederholung(arr).fürEach(it => { anhängenKind(es, neuesArr); }); }, []) const noRepeat = (arr) => { //Duplikate entfernen let newobj = {}; return arr.reduce((vorheriger Wert, aktueller Wert) => { neuesObjekt[aktuellerWert.Abt.Id] ? '' : neuesObjekt[aktuellerWert.Abt.Id] = preVal.push(aktuellerWert); Rückgabewert }, []); } const appendChild = (Element, neuesArr) => { if(!newArr.find(it => item.deptId.indexOf(it.deptId) > -1)) { //Alle Abteilungen der ersten Ebene newArr.push({ deptId: Artikel.deptId, Abteilungsname: Artikel.Abteilungsname, Kinder: [], }); setTreeData(neuerArr); }anders { anhängenAnderesKind(Element, neuesArr); } } const appendOtherChild = (Element, neuesArr) => { newArr.map(it => { wenn(item.deptId.indexOf(it.deptId) > -1 && item.deptId.length === it.deptId.length+3) { es.Kinder.push({ deptId: Artikel.deptId, Abteilungsname: Artikel.Abteilungsname, Kinder: [], }) }anders { anhängenAnderesKind(Element, es.Kinder); } }); setTreeData(neuerArr); } ZusammenfassenVielleicht unterscheiden sich diese Daten von Ihren, aber die Logik ist wahrscheinlich ziemlich ähnlich. Sie können sich diese Dutzenden von Codezeilen genau ansehen. Dies ist das Ende dieses Artikels zum Konvertieren von JavaScript-Arrays in Baumstrukturen. Weitere Informationen zum Konvertieren von JavaScript-Arrays in Baumstrukturen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Detailliertes Installations- und Deinstallationstutorial für MySQL 8.0.12
Inhaltsverzeichnis Warum optimieren? ? Wo soll ic...
Inhaltsverzeichnis Vorwort Wie wechselt man zwisc...
Indem wir den aktuellen Bildlaufversatz zu den At...
Inhaltsverzeichnis Was ist das Apollo Configurati...
Inhaltsverzeichnis Herkunft Virtueller Speicher P...
Die Kodierung von Webseiten wird im Englischen als...
Wir sollten besser aufpassen, denn die HTML-Poliz...
Inhaltsverzeichnis Vorwort Verkettung von Verspre...
Inhaltsverzeichnis npm herunterladen Schritt (1) ...
Damit die Tabelle den Bildschirm (den verbleibende...
Schlägt die Remote-Verbindung zu MySQL fehl, kann...
Überblick es6 fügt eine neue Möglichkeit hinzu, b...
Inhaltsverzeichnis 1. Einleitung Zweites Training...
Wirkung: Wenn sich die Diashow in eine Richtung b...
Inhaltsverzeichnis Einführung in NIS Netzwerkumge...