我正在尝试使用Angular应用程序保持分页uib-pagination
。我无法找到执行此操作的正确方法。
的HTML
<table id="mytable" class="table table-striped">
<thead>
<tr class="table-head">
<th>Name</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="person in aCandidates">
<th>
<div>{{person}}</div>
</th>
</tr>
</tbody>
</table>
控制者
$scope.totalItems = $scope.aCandidates.length;
$scope.currentPage = 1;
$scope.itemsPerPage = 10;
我能够看到分页栏,但是没有执行任何操作,即使将total-items设置为10,也将呈现整个表数据。
uib分页的工作原理以及数据(在这种情况下aCandidates
)如何与分页相关联。
您缺少的部分是必须具有从整个数组中获取当前页面数据的功能。我添加了一个函数setPagingData()
来处理此问题。
您可以在分叉的拨蓬中看到这一点
var app = angular.module("plunker", ["ui.bootstrap"]);
app.controller("MainCtrl", function($scope) {
var allCandidates =
["name1", "name2", "name3", "name4", "name5",
"name6", "name7", "name8", "name9", "name10",
"name11", "name12", "name13", "name14", "name15",
"name16", "name17", "name18", "name19", "name20"
];
$scope.totalItems = allCandidates.length;
$scope.currentPage = 1;
$scope.itemsPerPage = 5;
$scope.$watch("currentPage", function() {
setPagingData($scope.currentPage);
});
function setPagingData(page) {
var pagedData = allCandidates.slice(
(page - 1) * $scope.itemsPerPage,
page * $scope.itemsPerPage
);
$scope.aCandidates = pagedData;
}
});
<link data-require="bootstrap-css@*" data-semver="4.0.0-alpha.2" rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" />
<script>document.write('<base href="' + document.location + '" />');</script>
<script data-require="angular.js@1.4.x" src="https://code.angularjs.org/1.4.9/angular.js" data-semver="1.4.9"></script>
<script data-require="ui-bootstrap@*" data-semver="1.3.2" src="https://cdn.rawgit.com/angular-ui/bootstrap/gh-pages/ui-bootstrap-tpls-1.3.2.js"></script>
<div ng-app="plunker">
<div ng-controller="MainCtrl">
<table id="mytable" class="table table-striped">
<thead>
<tr class="table-head">
<th>Name</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="person in aCandidates">
<th>
<div>{{person}}</div>
</th>
</tr>
</tbody>
</table>
<uib-pagination total-items="totalItems" ng-model="currentPage" items-per-page="itemsPerPage"></uib-pagination>
</div>
</div>
问题内容: 我正在尝试将模型中的数据插入模板,但是我想每7次重复添加一个新的表行。使用基于strign的模板,我可以使用迭代索引和模来相当容易地做到这一点,但是我无法弄清楚如何使用angular的DOM模板来做到这一点。 这是HTML: 而javascript类似于: 您可以在JSFiddle中查看以下代码:http : //jsfiddle.net/3zhbB/2/ 问题答案: 请与天数组的数组
问题内容: 我正在尝试将页面添加到我的列表中。我遵循了有关智能手机的AngularJS教程,我试图仅显示一定数量的对象。这是我的html文件: 我添加了带有某些值的select标记,以限制将要显示的项目数。我现在想要的是添加分页以显示下一个5、10等。 我有一个与此相关的控制器: 而且我还有一个模块,以便从json文件中检索数据。 问题答案: 如果您没有太多数据,则可以通过将所有数据存储在浏览器中
问题内容: 我想问你是否可以帮我这个忙。 我在这里用我的问题创建了一个jsfiddle 。我需要使用ng-model =“ my _ {{$ index}}”方式在ng-repeater中动态生成一些带有ng-model的输入。 在jsfiddle中,您可以看到一切正常,直到我尝试动态生成它为止。 HTML将是: 还有javascript … 你能给我个主意吗? 非常感谢。 问题答案: 它能解决您
问题内容: 我正在开发一个页面,我需要在其中显示一些框(使用),其中包含频道信息以及显示位置(城市)。 我面临的问题是当我重复第二遍时: 这应该获得第一个ng-repeat的$ index值,并使用显示频道的位置创建一个新数组。它确实做到了。但是,当我使用此数组应用第二个ng- repeat时,它无法正常工作。 说我的html看起来像这样(PS:我需要使用索引值而不是因为我将这些框放到列中) JS
问题内容: 我正在使用AngularJS,并且假设它可以工作(不起作用),我想获得的效果将类似于它将产生的效果。 视图 控制者 我意识到该代码将无法使用,因为它不可用,因为它将仅可用于每一行内的对象。该代码是为了让我了解正在尝试做的事情:即。我希望能够使用其类也基于条件的表行来创建,该条件取决于对行本身的范围功能的访问。。我意识到我 可以 在列上添加ng- class,但这很无聊。有人有更好的主意
问题内容: 我正在使用像这样的过滤器渲染对象列表: 我尝试对列表的排序进行ng动画处理的尝试令人沮丧,因此不值得分享。我在这里看到了Yearofmoo示例应用程序。 不幸的是,这个演示并不是我想要实现的。在定义更改后,当给定列表项以新顺序放置时,我需要设置其X位置的动画。我试图通过css过渡和绝对定位来实现这一点,但是似乎在使动画成为真正的挑战时重新创建了列表项。 (使用或不使用 )是否可能? 您