当前位置: 首页 > 知识库问答 >
问题:

为什么AngularJS ng-bind不更新视图

葛智敏
2023-03-14
<body ng-app="bindExample">

<script>
  angular.module('bindExample', [])
    .controller('ExampleController', ['$scope', function($scope) {
      var vm = this;
      vm.name = 'Whirled';
      window.setInterval(function(){ vm.name = 'Jon';}, 5000);
    }]);
</script>

<div ng-controller="ExampleController as vm">
    Hello <span ng-bind="vm.name"></span>!
</div>
</body>

我希望在5秒钟后,输出改变hello jonby它停留在hello whirled。这是为什么?我还需要做什么吗?

共有1个答案

伯英武
2023-03-14

使用$interval服务

Angular的window.setInterval包装器这里是文档

$interval(function(){
     vm.name = 'Jon';
}, 1000);

不要忘记将$interval插入为,

.controller('ExampleController', ['$scope', $interval, function($scope, $interval) { ....
window.setInterval(function(){
    vm.name = 'Jon';
    $scope.$apply();
}, 5000);
 类似资料:
  • 我是java新手,所以请不要后悔java中的对象和东西正在传递引用的值,但下面是我试图传递对象的代码。当我通过传递到函数中更新值时,a的值没有改变。发生了什么请帮助我。。。

  • 与其他包管理器(如)相比,我发现当更新与给定项目相关的包时,有一种奇怪的行为。 还根据留档,和选项 根据composer.json将依赖项升级到最新版本,并更新composer.lock文件。 事实上,正确地更新了新的包版本号。但是没有被修改,并且列出了旧的版本过低的包。 为什么会发生这种情况?是我做错了什么,还是这就是应该怎么做的?如果是这样的话,为什么两个文件中的一个是最新的,而另一个不是最新

  • 为el-transfer添加了一个右侧列表上下排序的功能,但是点击之后数组数据更新了,视图却没刷新.代码如下:

  • 问题内容: 示例1中的问题是“ this”引用了全局名称而不是myName对象。 我了解在将this的值设置为特定对象时使用bind()的方法,因此它可以解决示例1中的问题,但是为什么首先会出现此问题?这仅仅是创建Javascript的方式吗? 我还想知道为什么示例3解决了这个问题,以及示例2和示例3之间的区别。 问题答案: 为什么需要JavaScript bind()? 值是决定 如何 一个功能

  • choice5是一个JComboBox 从choice5中选择项目时 被称为(编辑:对于我可以选择的每个项目,我可能有一个不同的jtable我想要显示) 编辑(SSCCE): MyTableModel

  • 我有以下疑问 以及以下突变 并且响应是正确的,但apollo store不更新。(我有dataIdFromObject: