我在Angular中构建了一个分页系统,但它有一个我无法弄清楚的设计缺陷。
我需要能够从不同的模板文件中调用此指令并共享相同的页面范围。我已经尝试过隔离范围,但它需要能够更改需要在控制器中定义的分页项目的范围。
以下是一个有效的例子:http://plnkr.co/edit/Qw2NmakYRlse1Eo7MESh?p=preview
当您点击其中一个寻呼机时,您可以看到问题,而另一个未使用它进行更新。
pagination指令更改scope.pages数组。然后,使用该数组的模板会更改寻呼机。
app.directive('pagination', function(){
return {
restrict: "A",
templateUrl:'pagination.html',
link: function(scope, element, attrs) {
答案 0 :(得分:1)
模板未更新,因为没有共享相同的范围,请尝试使用此更新版本:
http://plnkr.co/edit/E1DLOacahykSwWBWhHhU?p=preview
技巧可能是启用双向绑定:
return {
restrict: "A",
scope: {
items: '='
},
并使用此对象存储您的网页。
scope.items = [/*list of pages*/]