我对ngShow有以下问题。我从$ http.get 以jSON的形式接收响应,并使用ngRepeat构造多个DOM元素。所有这些工作正常。从我的控制器只适用于:ngShow问题
$http.get(requestUrl).success(function (data) {
$scope.results = data.results;
});
data.results是这样一个对象:
{
"someProp": ["item1", "item2", "item3"],
"someProp1": ["item1", "item2", "item3"]
}
从我的模板,我尝试使用ngShow这样的:
<table ng-show="Object.keys(results).length > 0">
和像这个:
<table ng-show="Object.keys($scope.results).length > 0">
有没有 运气。
<table ng-show="true">
和
<table ng-show="false">
正常工作。
所以看来问题出在表达式中。我会非常感谢任何帮助。
'ng-show'需要一个[angular expression](http://docs.angularjs.org/guide/expression),所以如果不进行双重检查,就不能认为每个* normal * javascript函数都能正常工作。 – Yoshi
改为在函数中包含'Object.keys(results).length'。 – zsong