Эквивалент нг-бинда в Angular
Я использовал NG-Bind в Angularjs, как это
<div ng-bind="getVal()"></div>
где getVal()
возвращает некоторое значение, и оно было в контроллере. Но в Angular2 у меня есть функция getVal()
в компоненте, и мне нужно вызвать ее из шаблона, так же, как angular1.
Я старался
<div [(ngModel)]="getVal()"></div>
Но не повезло, есть идеи?
Ответы
Ответ 1
Конечно, {{ getVal() }}
будет работать, как подсказывает Дж. Б. Низет, когда вы хотите, чтобы возвращаемое значение вашей функции появлялось где-то внутри тела в какой-то строке HTML. Тем не менее, что вы на самом деле после...
Угловой 1 Стиль:
<div ng-bind="getVal()"></div>
становится...
Угловой эквивалент 2+ ng-bind:
<div [textContent]="getVal()"></div>
Угловой эквивалент 2+ ng-bind-html:
<div [innerHtml]="getVal()"></div>
Ответ 2
Добавление к ответу @Luvaas Если вы ищете привязки значений данных из объекта, можно использовать следующее:
Угловой 1 способ:
<div ng-bind="car.color"></div>
В Angular 2+ ng-bind может использоваться с [textContent]
:
<div [textContent]="car.color"></div>
Угловой эквивалент 2+ для ng-bind-html: [innerHtml]
:
<div [innerHtml]="car.template"></div>