我有一个JS对象声明如此
$scope.items = {};
我也有一个$ http请求填充这个对象的项目。我想检测这个项目是否为空,似乎ng-show支持这个…我进入
ng-show="items"
并且神奇地它工作,我也想从控制器做同样,但我似乎无法得到它的工作,似乎我可能必须迭代对象,看看它是否有任何属性或使用lodash或下划线。
有另一种方法吗?
我试过
alert($scope.items == true);
但它总是返回假,当对象被创建和填充$ http,所以它不工作那样的方式。
使用空对象字面量在这里不是必需的,可以使用null或undefined:
$scope.items = null;
这样,ng-show应该继续工作,在你的控制器中你可以做:
if ($scope.items) { // items have value } else { // items is still null }
在$ http回调中,您可以执行以下操作:
$http.get(...,function(data) { $scope.items = { data: data,// other stuff }; });