ng-show即使满足条件也不起作用

时间:2013-07-19 12:10:54

标签: javascript angularjs ng-show

我正在尝试使用ng-show,只是当某些东西存在时,显示它。

<span ng-show="comment">{{comment}}</span>

我在范围注释=“否”中对此进行了测试,但它隐藏了它。当comment =“Yes”显示它时,我很困惑为什么会发生这种情况,因为在JavaScript中我尝试if(comment)并且它有效...

1 个答案:

答案 0 :(得分:5)

ng-show指令在内部使用方法toBoolean

以下是它的样子

function toBoolean(value) {
  if (value && value.length !== 0) {
    var v = lowercase("" + value);
    value = !(v == 'f' || v == '0' || v == 'false' || v == 'no' || v == 'n' || v == '[]');
  } else {
    value = false;
  }
  return value;
}

如果你看一下实现,就像no,false,n,0这样的东西评估为false。