arrays - 为什么 ng-bind 不适用于数组?

标签 arrays angularjs

我想创建一个与数组元素的绑定(bind),以便当数组更改时,HTML 也会更新。但是,这不行。

HTML

<body ng-controller="Game as game">

<div>
    <span ng-bind="game.testString"></span>
</div>

<div>
    <span ng-bind="game.testArray"></span>
</div>

<input type="button" ng-click="game.btnAddLetter()" value="Change">
</body>

JS

angular.module('notesApp', [])
    .controller('Game', [function() {
        var self = this;
        self.testString = 'a';
        self.testArray = ['a'];

        self.btnAddLetter = function() {
            self.testString = 'X';
            self.testArray.push('X');
        }
    }]);

我预计两个跨度都会更新,但是,只有 testString 已更新。到底是什么原因造成这种情况呢?如何解决这个问题?

最佳答案

您必须使用JSON过滤器:

<span ng-bind="game.testArray | json"></span>

关于arrays - 为什么 ng-bind 不适用于数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38557856/

相关文章:

ruby-on-rails - Mongoid:数组包含另一个数组的任何值

javascript - 在 JavaScript 中将 PHP 数组转换为 JSON 数组时, ","成为数组的第一个元素

C# 如何将 short[] 转换为 bool[]?

javascript - AngularJS Controller 模式和 $scope 与关键字 this 相同吗?

angularjs - Angular Calling Modal Open 功能从一个 Controller 到另一个 Controller

c - C 中的左值、右值和数组初始化

java.sql.ARRAY 到 ArrayList<String[]> OracleCallableStatement

javascript - AngularJS单元测试指令的属性值

javascript - jquery 验证 - 调用某些元素的 .valid() 方法不会清除错误

javascript - 为什么路由在这段代码中不起作用?