Почему ngModels не должен быть напрямую связан с переменной сервиса? - PullRequest
0 голосов
/ 05 июня 2018

Я регулярно связываю ngModel непосредственно с служебной переменной (считайте значение общедоступной строковой переменной или функцией-получателем):

<input type="text" [(ngModel)]="service.value">

Теперь я читаю большечем один раз, что это не рекомендуемый способ, и ngModels следует связывать только с компонентными / локальными переменными, но никогда не находил объяснения этому !

В чем проблема?

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Класс компонента является контроллером: он должен иметь логику и элемент управления в шаблоне.Использование значения, получаемого непосредственно из сервиса, делает ваш контроллер слабее и менее легким / очевидным для отладки.Ваш взгляд больше не привязан к своему классу напрямую

0 голосов
/ 05 июня 2018

Вы можете создать свойство get и присвоить его ngModel

<input type="text" [(ngModel)]="value">

ts

get value(): string { // return type
   return this.service.value
}
...