我在应用程序中使用ui网格。
我在columnDefs
中使用cellTemplate
来删除该行,为此我使用以下指令。
CellTemplate:
<a href ng-confirm-click confirmed-click="deleteProductFn(row.entity._id)"> <i class="fa fa-trash text-danger"></i> </a>
指令
.directive('ngConfirmClick', function () {
return {
link: function (scope, element, attr) {
var msg = attr.ngConfirmClick || "Are you sure want to delete?";
var clickAction = attr.confirmedClick;
element.bind('click', function (event) {
if (window.confirm(msg)) {
console.log(msg);
scope.$apply(clickAction);
}
else {
}
});
}
};
})
这里console.log(msg);
在控制台中打印消息,但在下一行范围内$申请不起作用。
非常感谢您的帮助。
问题在于访问行的方式。
它应该是row.entity
而不是row.entity._id
。
Plunker
如果要获取行中的属性,可以在函数中执行,但不能通过属性将行对象传递给函数。
$scope.deleteProductFn = function(entity) {
//If you want to get to a property on the row entity
//get it here:
console.log(entity._id);
};