Angular2 self.parentView.context не является функцией

У меня есть button элемент в моем *ngFor Элемент списка:

<li class="cart__item" *ngFor="let item of cartService.cart$ | async">
  <button class="button button--decr" (click)="decrItem()">-</button>
     <form action="#">
        <input type="text" id="qnt" maxlength="3" readonly="readonly" value="{item.qnt || 0}}">
     </form>
  <button class="button button--incr" (click)="incrItem()">+</button>                
</li>

В моем сервисе я создал public метод (только для целей тестирования)

incrItem() {
    alert("Test!")
}

Нажав на мой button и звонит incrItem() Функция вызывает ошибку:

Error in ./AppComponent class AppComponent - inline template:63:13 caused by: self.parentView.context.incrItem is not a function

Я не могу понять причину, так как я импортировал свой компонент CartService (где я создал публичный метод) в AppComponent (где мой button оказываемый).

И мой метод общедоступен, поэтому я могу использовать его во всем приложении. Не нашел мне рабочего решения в подобных вопросах.

1 ответ

Решение

Просто двигайся incrItem метод из службы в ваш класс компонентов.

Вы должны использовать свойства компонента и методы в качестве контекста для вашего шаблона.

Другие вопросы по тегам