Я использую ngrx/store
и Angular 6
.У меня глубокая вложенная структура в магазине.Но я чувствую, что это неправильный способ сохранить это так:
const state = [
{
aliases: ['alias1', 'alias2'],
isRequired: false,
isSensitive: false,
name: 'Adress',
timezoneId: 'UTC',
children: []
},
{
aliases: ['alias3', 'alias4'],
isRequired: true,
isSensitive: false,
name: 'Phone',
timezoneId: 'UTC-5',
children: [
{
aliases: ['alias1', 'alias2'],
isRequired: true,
isSensitive: false,
name: 'Sub-Phone',
timezoneId: 'UTC-5',
children: [
{
aliases: ['alias-phone1', 'alias-phone2'],
isRequired: false,
isSensitive: true,
name: 'Sub-Sub-Phone',
timezoneId: 'UTC',
children: []
}
]
}
]
}
]
Здесь свойство name
похоже на id
, оно не может быть таким же на том же уровне, но можету детей.Например, Sub-Phone
и Sub-Sub-Phone
могут быть названы Phone
.Каков наилучший способ сохранить в магазине такую структуру, которую легко будет изменить.Потому что теперь, если хотите изменить name: 'Phone'
, я должен вернуть в редуктор полный этот объект со всеми его детьми.Как я могу это нормализовать?