我在$ scope变量的aglularjs
中创建了一个getter/setter Object.defineProperty($scope,
"isActive", {
enumerable: true,
configurable: true,
get: function get() {
return $scope.controlStatus;
},
set: function set(val) {
$scope.controlStatus = val;
_.isFunction($scope.callback) ? $scope.callback({ id: $scope.for, status: val }) : null;
} });
我想在特定条件下删除此Getter/Setter,请建议我该怎么做?
如果条件是外部的,则可以在事实之后始终将getter和setter设置为未定义:
Object.defineProperty($scope,
"isActive", {
enumerable: true,
configurable: true,
get: undefined,
set: undefined
}
);
作为替代方案,您可以将对象解析为属性,例如:
$scope.isActive = JSON.parse(JSON.stringify($scope.isActive));