如果我将范围变量传递给函数而不从$ scope调用它,如何删除范围变量?
// controller
$scope.user_id = 1;
$scope.example = function(uid) {
// remove $scope.user_id without accessing it like a scope
// smth like
uid = null; // won't work
};
// html
<div ng-click="example(user_id)">Click me!</div>
所以我想拥有完全孤立的功能
答案 0 :(得分:2)
您可以通过this.pendingChanges
从$scope
移除该属性的唯一方法。如果您需要动态引用对象(即delete
)和属性,请尝试将密钥作为字符串传递,例如
$scope
和
ng-click="example(this, 'user_id')"