【问题标题】:How to use a Dynamic Variable to access Scope field - AngularJS如何使用动态变量访问范围字段 - AngularJS
【发布时间】:2021-04-07 15:53:28
【问题描述】:

我试图有一个变量字符串,并访问匹配的 $s​​cope.field 但它是未定义的并且没有返回我所期望的。我做错了什么,或者这不可能?

$scope.selectedHolidayA = "Christmas"
$scope.selectedHolidayB = "NewYears"

var HA = "selectedHolidayA";
var HB = "selectedHolidayB";

我想得到与 $scope.selectedHolidayA = "Christmas" 相同的结果。但我越来越不确定了。

我试过这些,但没有运气。

console.log("Test 1", $scope["HA"]);   //I want these to return "Christmas"
console.log("Test 2", $scope[HA]);     //Currently returns undefined
console.log("Test 3", $scope.HA);
        

是否可以传递变量,如果可以,如何?谢谢!

【问题讨论】:

    标签: javascript angularjs variables scope angularjs-scope


    【解决方案1】:

    使用“测试 2”:

    $scope = {};
    
    $scope.selectedHolidayA = "Christmas"
    $scope.selectedHolidayB = "NewYears"
    
    var HA = "selectedHolidayA";
    var HB = "selectedHolidayB";
    
    console.log($scope[HA]+' and '+$scope[HB]);
    
    console.log("Test 2", $scope[HA]);

    【讨论】:

    • 啊谢谢!我最初实际尝试的示例没有带引号的 HA,因此未定义。它是 var HA = selectedHolidayA;之前不小心。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-20
    • 2011-11-04
    • 1970-01-01
    • 2017-07-27
    • 2015-08-08
    • 2014-05-28
    • 1970-01-01
    相关资源
    最近更新 更多