Arrays 如何仅当一个数组有两个或更多项时才显示元素?
我有一个项目数组,可以是空的,有一个项目或两个以上的项目。 现在,如果我想显示元素,我使用简单的ng show事件Arrays 如何仅当一个数组有两个或更多项时才显示元素?,arrays,angularjs,Arrays,Angularjs,我有一个项目数组,可以是空的,有一个项目或两个以上的项目。 现在,如果我想显示元素,我使用简单的ng show事件 <div ng-show="scopeName"> ... </div> 请尝试此代码,它应该可以工作: <div ng-controller="MyCtrl"> <div ng-show="array.length > 2">I'm visible</div> <div ng-show="a
<div ng-show="scopeName">
...
</div>
请尝试此代码,它应该可以工作:
<div ng-controller="MyCtrl">
<div ng-show="array.length > 2">I'm visible</div>
<div ng-show="array.length > 3">I'm not visible</div>
</div>
function MyCtrl($scope) {
$scope.array = [
{id: 1},
{id: 2},
{id: 3}
];
}
我看得见
我看不见
函数MyCtrl($scope){
$scope.array=[
{id:1},
{id:2},
{id:3}
];
}
这是一个工作示例
我想指出,您问题的代码有一个错误:scopeName.lenght>1
我想最好是:scopeName.length>1:)请检查这个
我正在显示,项目数组不是空的
我正在显示,items数组有多条记录
var-app=angular.module('app',[]);
app.controller('myController',函数($scope){
$scope.items=[“苹果”、“橙色”];
});
这对我不起作用。我的数组来自一个服务,这是一个问题吗?请更新你帖子中的代码。这样我们可以更好地理解。请确保pageSlides响应是一个数组?并检查您视图中的控制器名称。我在您的代码中没有看到任何错误。谢谢您,这是我的拼写错误(在pc上连续18小时需要休息:P)。我选择Artyoms的答案只是因为他先回答。但也谢谢你!这是个拼写错误,很抱歉。但它仍然不起作用。@VassilisPits,您看到我的JSFIDLE示例了吗?这应该行得通。你能为我们提供你的代码吗?谢谢,我觉得很愚蠢,这确实是一个拼写错误,后来又出现了缓存问题。谢谢!
myApp
.controller(
'controllerName',
[
'$rootScope',
'$scope',
'$routeParams',
'Api',
function($rootScope, $scope, $routeParams, Api) {
var pageSlug = $routeParams['pageSlug'];
$scope.init = function() {
$scope.singlePage = [];
$scope.pageSlides = [];
Api.get(
'site/' + $rootScope.config.api.propertyId + '/page/' + pageSlug
).then(
function(data) {
$scope.singlePage = data.page;
$scope.pageSlides = $scope.singlePage['media'];
}
);
}
$scope.init();
}])
<div ng-controller="MyCtrl">
<div ng-show="array.length > 2">I'm visible</div>
<div ng-show="array.length > 3">I'm not visible</div>
</div>
function MyCtrl($scope) {
$scope.array = [
{id: 1},
{id: 2},
{id: 3}
];
}
<div ng-app="app">
<div ng-controller="myController">
<div ng-show="items.length">I am showing, items array is not empty</div><br />
<div ng-show="items.length > 1">I am showing, items array has more than one record</div><br />
</div>
</div>
var app = angular.module('app', []);
app.controller('myController', function ($scope) {
$scope.items = ["Apple", "Orange"];
});