Ниже приведена функция, для которой можно найти прилагаемый отчет о покрытии Стамбула.
export function getControlFromId(controlId, ancestorControl) {
if (!(controlId && ancestorControl)) {
return undefined;
}
if (controlId === ancestorControl.id) {
return ancestorControl;
}
if (ancestorControl.controls) {
for (const control of ancestorControl.controls) {
const result = getControlFromId(controlId, control);
if (result) {
return result;
}
}
}
return undefined;
}
Проблема: Почему он говорит, что если путь не выбран? На изображении четко видны линии, если выполняется цикл.
Пример тестовых данных:
const ancestorControl = {
name: 'form',
controls: [
{
name: 'Section',
id: 1,
},
],
};