В моем приложении есть следующий объект пользователя:
let user = {name: "John", dob:"1995-10-15", metadata: {}}
Свойство metadata
моего объекта является пустым объектом. При вводе пользователем я хочу создать новое свойство в объекте metadata
, например:
<input [(ngModel)]="user.metadata.childrenNumber" placeholder="Enter number of children"></input>
Пока все хорошо, все работает как положено. Однако свойство childrenNumber
, которое я сохранил в массиве:
let metaDataOptions = ['childrenNumber', 'workStatus', 'education'];
Как я могу сослаться на имя свойства, которое я хочу создать из этого массива? Для случая выше я попытался сделать что-то вроде этого:
// i is index from ngFor. i can be 0, 1 or 2
<input [(ngModel)]="user.metadata.metaDataOptions[i]" placeholder="Enter number of children"></input>
Однако это не работает. Как мне достичь желаемого результата?