javascript – angularjs ng显示与承诺的表达

我正在使用ng-show和一个解析为一个布尔值的承诺的表达式.当我这样做,我得到10个摘要迭代溢出.

http://plnkr.co/edit/XibYM0kCnXhKjNUeTsp3?p=preview

<body ng-controller="MainCtrl">
    <p ng-show="returnsABoolean()">non promise</p>
    <p ng-show="returnsAPromiseThatResolvesToABoolean()">promise</p>
  </body>

按Ctrl:

$scope.returnsABoolean = ()->
    true

  $scope.returnsAPromiseThatResolvesToABoolean = ()->
    $q.when(false)

我知道{{somePromise}}将会解决,但是{{returnsAPromiseThatResolvesToABoolean()}}似乎引起同样的问题.

有任何想法吗?我期望这个工作..

解决方法

AngularJS自动解决了模板绑定的承诺.然而,您应该使用ng-init中的承诺来阻止摘要循环每次打勾时返回新的承诺.
<p ng-init="v=returnsAPromiseThatResolvesToABoolean()" ng-show="v">promise</p>

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...