Рассмотрим объект emp
, обладающий свойствами name
и age
.
В соответствии с пользовательским вводом имени или возраста текстового поля мне нужно отобразить значение из объекта.
Обычно мы можем отображать как {{emp.name}}
или {{emp.age}}
но в моем случае свойство emp
является динамическим.
Например: если входной текст равен x, то в свойстве emp должно быть
x
. лайк{{emp.x}}
Как этого добиться?
Имя свойства должно быть взято из пользовательского ввода. Никаких условий или логических вещей.
То же самое и относительно ngmodel
.
заранее спасибо
Рассматривали ли вы скобки для доступа к полям объектов? Например. вместо emp.name
можно использовать emp['name']
. В этом случае ключ также может быть переменной, такой как emp[someVariable]
.
Если вы хотите определить значение динамического свойства, вы должны сделать это следующим образом:
{{ emp['x'] }}
Скобочная нотация ищет свойства объекта с именем внутри них.
Да, ваша тема помогла в этом. свойство: любой = 'возраст'; {{emp[property]}} будет динамически отображать его в соответствии с изменением
Здравствуйте, @user2527732, это будет работать {{emp[input.value]}} или что-то вроде того, что вы ищете? Или, может быть, другим подходом было бы подписаться на изменение ввода в вашем компоненте и назначить там новую переменную.