我已经声明并初始化了几个作用域变量,并希望动态访问它们,但是当我尝试从 html 文件访问变量时,该变量被视为字符串。
JS 代码 -
$scope.abc3txt = "Hello";
$scope.abc2txt = "hello everyone";
$scope.abc1txt = "hello 123";
abc“number”文本之间每个变量都有一个数字,例如 3,2,1。
我想根据 html 文件中的数字访问变量值。
HTML 代码-
<h4>{{abc+a.status+txt}}</h4>
a.status 具有诸如 1,2 或 3 之类的值。
这会像 html 中的“abc3txt”一样打印,而不是返回“$scope.abc3txt”变量的初始化值。
请有人帮忙..
最佳答案
我不知道是否可以直接用$scope
来完成。一种方法是将这些值保存在对象中:
$scope.values = {
abc3txt: "Hello",
abc2txt: "hello everyone",
abc1txt: "hello 123"
};
在您看来,您可以像这样访问它们:
{{values['abc' + a.status + 'txt']}}
编辑: 最好的替代方法是使用controllerAs 语法。假设你有 Controller :
var vm = this;
vm.abc3txt = "Hello";
vm.abc2txt = "hello everyone";
vm.abc1txt = "hello 123";
那么在你看来:
{{vm['abc' + a.status + 'txt']}}
关于javascript - $scope 变量被视为字符串 - AngularJs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37270780/