通过使用字符串变量作为作用域名称来引用$ scope,例如$ scope。[stringVar]

时间:2018-07-27 15:27:00

标签: javascript angularjs

我需要更改控制器中作用域的值,但是具体作用域的名称不是明确知道的,它将作为变量发送到控制器功能。

具有显式作用域名称的示例函数为:

$scope.resetIsCustomer = function () {
    $scope.cust = null;
};

我需要的示例是:

$scope.resetQuestionScope = function (scopeName) {
    $scope.scopeName = null;
};

我不确定要搜索的内容或执行此操作的可能方法,类似的事情是,在Jquery中按ID /名称引用元素时,可以将它们构造为$('[name="' + this.id + 'pie"]')或检查是否与{{ 1}}

1 个答案:

答案 0 :(得分:1)

$scope.resetQuestionScope = function (scopeName) {
    $scope[scopeName] = null;
};

与普通js中的语言相同,好的角度是普通js:)

var obj = {};
obj.a = 2;
obj['a'] = 2;
var p = 'a';
obj[p] = 2;