我们可以使用jquery轻松删除类似的东西,但是我们可以使用angular来做这样的事情吗?
<tr>
<td *ngFor="#lev of rubric?.criteria[0].levels">
<button class="close removeLevel" (click)="onClickRemove($event)">×</button>
<input type="text" class="form-control" placeholder="Performance Level"
#level="ngForm"
[(ngModel)]="lev.level"
ngControl="level"
/>
</td>
</tr>
在Component.ts中:
onClickRemove($event) {
}
如何在此处访问引发事件的行或单元元素?
答案 0 :(得分:6)
根据您的问题,您希望在按下删除按钮时删除该行。 以Angular方式,您必须做的是从模型中删除记录。因此,只需将行ID传递给ng-controller独有的东西,然后将其从模型中删除。
所以如果你有类似下面的内容
rdd2
控制器中的
<td *ngFor="#lev of rubric?.criteria[0].levels">
<button class="close removeLevel" ng-click="onClickRemove($index)">×</button>
<input type="text" class="form-control" placeholder="Performance Level"
#level="ngForm"
[(ngModel)]="lev.level"
ngControl="level"
/>
</td>
答案 1 :(得分:5)
使用像Angular这样的变更检测框架的好处在于您只需修改模型,您的视图就会自动更新。无需自己修改DOM。
以下是它的工作原理:
ChangeDetectorRef
获得对它的引用)。它会跟踪所有视图绑定,并记住每个绑定的最后一个值。