У меня есть следующая проблема с ngShow. Я получаю ответ как jSON от $ http.get и создаю несколько элементов DOM, используя ngRepeat. Все это работает правильно. Из моего контроллера праведный применять:Проблема с 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' ожидает [угловое выражение] (http://docs.angularjs.org/guide/expression), поэтому без двойной проверки вы не можете предположить, что каждая функция * normal * javascript будет работать. – Yoshi
wrap 'Object.keys (results) .length' вместо функции. – zsong