请在Debug中解释AngularJs的ng-click行为

Please explain AngularJs ng-click behavior in Debug

本文关键字:ng-click 行为 AngularJs 解释 Debug 请在      更新时间:2023-09-26

在分页指令中我有:

<tr dir-paginate="item in NumDen | itemsPerPage: 10">
 <td><span ng-click="EditThis()"ng-bind=item.Id ></span></td>
 <td ng-bind=item.Name></td>
</tr>

在我的控制器中我有:

    $scope.EditThis = function () {
    alert(this.item.Id);
}

当我在Chrome调试器中观看它时,我看到我有一个'this'对象,其中包含单个项目以及其他属性的所有值。这是一个美妙的,意想不到的惊喜。

这是标准的AngularJS功能,以获得绑定到click事件的对象吗?

您可能会想到一个jQuery事件处理程序,其中this是元素。

ng-click没有元素上下文或模型数据上下文,它只是使用它所在的角作用域的上下文调用它的属性值中包含的表达式。

传递item作为函数的参数:

ng-click="EditThis(item)"

Then in controller:

$scope.EditThis = function (item) {
    alert(item.Id);
}