Reputation: 371
How to remove scope variable if I pass it into function without calling it from $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>
So I want to have completely isolated function
Upvotes: 2
Views: 596
Reputation: 164733
The only way you're going to be able to remove the property from $scope
is via delete
. If you need to dynamically reference the object (ie $scope
) and the property, try passing the key as a string, eg
ng-click="example(this, 'user_id')"
and
$scope.example = function(scope, key) {
delete scope[key];
};
Upvotes: 2