我的html模板中有这个。我希望按钮在单击时触发showMore函数。
<button ng-click="showMore(secondPage)">Show More</button>
这是控制器。我不知道为什么$ scope.nextPage会在除了$ scope.secondPage之外的任何地方递增。我希望$scope.secondPage
在第一次点击Entry.query({page: 2})
时触发,然后在下次点击时触发Entry.query({page: 3})
。但是现在它继续发布第2页。
@MainController = ["$scope", "Entry", ($scope, Entry) ->
$scope.entries = Entry.query({page: 1})
$scope.nextPage = 2
$scope.secondPage = Entry.query({page: $scope.nextPage})
$scope.showMore = (secondPage) ->
i = 0
while i < secondPage.length
$scope.entries.push(secondPage[i])
i++
$scope.nextPage++
console.log("nextpage" + $scope.nextPage)
]
我正在使用coffeescript。我不完全理解为什么$ scope.secondPage中的页码不会递增。
答案 0 :(得分:1)
我会这样做:
<button ng-click="showMore()">Show More</button>
@MainController = ["$scope", "Entry", ($scope, Entry) ->
$scope.entries = []
current_page = 1
$scope.showMore = ->
on_success = (entries)->
$scope.entries = $scope.entries.concat entries
current_page = current_page + 1
Entry.query {page: current_page}, on_success
$scope.showMore()
]