这是(精简)材料版本的代码笔,这是(精简)引导版本。除了依赖项之外,所有的 javascript 都是相同的。
我有一个使用引导 css 的服务器端分页指令(我不确定 angular-bootstrap 库当时是否没有分页,或者我还没有找到它)。我决定将它移植到 angular-material,认为指令逻辑可以完全重用,我可以直接切换模板。使用 angular-material 版本,所有构成寻呼机的 md 按钮都会在瞬间复制,然后在每次重建寻呼机时消失。我在每次 ajax 调用后重建寻呼机,因为过滤器可以改变总页数。一个精简版的寻呼机如下:
app.controller('pagerCtrl', [
'$scope', 'userService', function ($scope, userService) {
var self = this;
self.pageNumber = 1;
self.page = function (number) {
self.pageNumber = number;
self.refresh();
}
self.refresh = function () {
userService.loadAllUsers().then(function (users) {
self.users = [].concat(users.data);
self.paging = users.paging;
self.buildPager();
});
}
self.buildPager = function () {
var pages = [];
for (var i = 1; i < self.paging.numberOfPages + 1; i++) {
pages.push({ number: i, isActive: self.pageNumber === i });
}
self.pages = [].concat(pages);
}
self.refresh();
}]);
这是(精简)材料版本的代码笔,这是(精简)引导版本。除了依赖项之外,所有的 javascript 都是相同的。
我想知道这是否是预期的行为,以及我是否可以采取任何措施来停止暂时的复制。在设置页面之前,我已经尝试了几种清空页面的变体,将页面设置为 [].concat(pages) ,就像它们在演示项目中所做的那样。
任何想法将不胜感激。