Эквивалент нг-бинда в 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>