Angular2 self.parentView.context不是一个函数
问题描述:
我已经在我的*ngFor
列表项有一个button
元素:Angular2 self.parentView.context不是一个函数
<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
呈现),所以我无法理解原因。
而我的方法是公开的,所以我可以在整个应用程序中使用它。 在类似问题中找不到工作解决方案。
答
只需将incrItem
方法从服务方式移动到您的组件类。
您必须使用组件属性和方法作为模板的上下文