Hey zusammen, ich hoffe jmd von euch kann mir weiterhelfen. Ich möchte gerne ein verschachteltes Array filtern und alle Einträge drin lassen, welche als Label, in dem Fall hier 'test', enthalten. Alle anderen sollen raus. Ich habs jetzt schon mit filter versucht, aber ich schaff es nicht alle Ebenen bis nach unten durch zu Filtern. Nur die erste Ebene.
Danke schon mal im Voraus
Code:
items: [ { id: 1, label: 'Label 1 (test)', checked: false, children: [ { id: 12, label: ''Label 1/2', checked: false, children: [ { id: 121, label: ''Label 1/12/121', checked: false, children: [ { id: 1211, label: ''Label 1/12/121/1211', checked: false, }, { id: 1212, label: ''Label 1/12/121/1212 (test)', checked: false, }, { id: 1213, label: ''Label 1/12/121/1213 (test)', checked: false, }, ], }, { id: 122, label: ''Label 1/12/122', checked: false, children: [], }, ], }, { id: 13, label: 'Label 1/13 (test)', checked: false, children: [], }, ], }, { id: 2, label: 'Label 2', checked: false, children: [ { id: 21, label: ''Label 2/21', checked: false, children: [ { id: 211, label: ''Label 2/21/211', checked: false, children: [], }, { id: 212, label: ''Label 2/21/212 (test)', checked: false, children: [], }, ], }, { id: 22, label: 'Label 2/22 (test)', checked: false, children: [], }, ], }, ]; let filteredlist = items.filter((elements) => { return elements.label.indexOf('test') !== -1 })
Comment