angular2View中如何调用共享服务函数?
How to Call shared service function in angular 2 View?
我想从 "Another" 组件的视图文件中调用共享服务功能。
比如删除一条记录我想这样设置:
<tr *ngFor="let ddata of tableData.data; let i = ddata"
(click)="delete_record(ddata)"
[class.active]="ddata.discountauthorizationid == selectedRow">
这里 delete_record
必须是我将注入相关组件的服务的一部分。
在组件 class 中定义的每个 属性 都可以在模板中使用。
如果不将视图(模板)注入您的组件,就无法从视图(模板)调用服务。
您可以将服务注入 public 属性,这样您也可以在模板中使用服务方法。
constructor(public yourService: YourService) {
}
您的模板:
<a (click)="yourService.yourMethod()">Test mehod</a>
注意:请考虑更好的解决方案是调用您的组件方法而不是使用服务方法。服务是在彼此不认识的 类 之间共享信息的好方法
良好的做法是在 private
范围内使用该服务,并使用一种方法将其 return 用于视图。
喜欢这个post。
根据官方文档,在模板中注入 public 服务绑定它不是反模式。
我想从 "Another" 组件的视图文件中调用共享服务功能。
比如删除一条记录我想这样设置:
<tr *ngFor="let ddata of tableData.data; let i = ddata"
(click)="delete_record(ddata)"
[class.active]="ddata.discountauthorizationid == selectedRow">
这里 delete_record
必须是我将注入相关组件的服务的一部分。
在组件 class 中定义的每个 属性 都可以在模板中使用。
如果不将视图(模板)注入您的组件,就无法从视图(模板)调用服务。
您可以将服务注入 public 属性,这样您也可以在模板中使用服务方法。
constructor(public yourService: YourService) {
}
您的模板:
<a (click)="yourService.yourMethod()">Test mehod</a>
注意:请考虑更好的解决方案是调用您的组件方法而不是使用服务方法。服务是在彼此不认识的 类 之间共享信息的好方法
良好的做法是在 private
范围内使用该服务,并使用一种方法将其 return 用于视图。
喜欢这个post。
根据官方文档,在模板中注入 public 服务绑定它不是反模式。