javascript - $scope 变量被视为字符串 - AngularJs

标签 javascript html angularjs

我已经声明并初始化了几个作用域变量,并希望动态访问它们,但是当我尝试从 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/

相关文章:

javascript - innerHTML 不尊重缩进

html:如何将行号添加到源代码块

angularjs - NgMask - 支持 2 位小数

javascript - AngularJS - 轮询持久数据存储

html - 如何使用 HTML 表示二叉树(从上到下)?

angularjs - 错误 TS2339 : Property 'endsWith' does not exist on type 'string'

javascript - Selenium 网络驱动程序 : Able to open Firefox browser but The address isn’t valid

javascript - Ext JS - 将面板绑定(bind)到数据存储的最佳方式

javascript - 到底什么是 Javascript 原型(prototype)?库或内置 Javascript 的东西?

html - 固定定位的 Bootstrap 崩溃