Какая-то проблема с областью видимости в JS
Сейчас делаю дерево из массива, есть рекурсивная функция, но при ее запуске выдает ошибку makeChildren is not defined
import {array} from './problems.js'
export default {
name: 'app',
methods: {
makeTree() {
console.log('тык');
const arrayTree = array.filter((elem) => !elem.parentId);
console.log('тык2');
arrayTree.forEach((elem) => makeChildren(elem,array));
return arrayTree;
},
makeChildren(elem,arr){
elem.children = arr.filter((child) => child.parentId === elem.id);
elem.children.forEach((child) => makeChildren(child,arr));
}
}
}
Сам массив
export const array = [
{name: 'Сфера медицины', id: 1, parentId: null},
{name: 'Сфера it', id: 2, parentId: null},
{name: 'Сфера искусства', id: 3, parentId: null},
{name: 'Сфера стомата', id: 4, parentId: 1},
{name: 'Сфера акушера', id: 5, parentId: 1},
{name: 'Сфера хирурга', id: 6, parentId: 1},
{name: 'Сфера пломбы', id: 7, parentId: 4},
{name: 'Сфера наркоза', id: 8, parentId: 4},
{name: 'Сфера брекетов', id: 9, parentId: 4},
]