Я должен проверить, соответствует ли какой-либо объект предметов определенному формату, как показано ниже. Эти элементы являются входными данными для компонента, и я хочу проверить правильность ввода. Я уже написал некоторый код для проверки правильности пунктов, но я хочу знать, может ли быть лучший способ написать это? Спасибо!
{
main: {
id: string,
name: string,
},
drilldowns: [
{
id: string,
name: string,
elements: [
{
id: string,
name: string,
}
],
}
],
}
export const isValidItem = (item) => {
if (!item.main || (item.main && !item.main.id))
return false;
if (item.drilldowns) {
const invalidDrilldowns = item.drilldowns.filter(drilldown => {
const invalidDrilldownElements =
drilldown.elements &&
drilldown.elements.filter(element => {
return !element.id;
});
return (
!drilldown.id &&
!drilldown.elements &&
invalidDrilldownElements.length !== 0
);
});
return invalidDrilldowns.length === 0;
}
return true;
};