2015-11-23 49 views
2

我已經使用了有角度的UI路由器,我試圖在分頁中更改URL。 使用UI Bootstrap分頁指令。更改分頁中的URL angularJS

我用這一個 github link

Demo link

在這個分頁工作完美。 但我需要通過點擊分頁更改狀態的網址。

<ul class="pagination" ng-if="1 < pages.length"> 
<li ng-if="boundaryLinks" ng-class="{ disabled : pagination.current == 1 }"> 
    <a href="" ng-click="setCurrent(1)">&laquo;</a> 
</li> 

<li ng-if="directionLinks" ng-class="{ disabled : pagination.current == 1 }"> 
    <a href="" ng-click="setCurrent(pagination.current - 1)">&lsaquo;</a> 
</li> 

<li ng-repeat="pageNumber in pages track by $index" ng-class="{ active : pagination.current == pageNumber, disabled : pageNumber == \'...\' }"> 
    <a ui-sref="result.(pageNumber)" ng-click="setCurrent(pageNumber)">{{ pageNumber }}</a> 
</li> 

<li ng-if="directionLinks" ng-class="{ disabled : pagination.current == pagination.last }"> 
    <a href="" ng-click="setCurrent(pagination.current + 1)">&rsaquo;</a> 
</li> 

<li ng-if="boundaryLinks" ng-class="{ disabled : pagination.current == pagination.last }"> 
    <a href="" ng-click="setCurrent(pagination.last)">&raquo;</a> 
</li> 

在config.route.js

.state('result', { 
      url: '/result', 
      templateUrl: 'tpl/search_result.html' 
     }) 
     .state('result.{pageNumber:[0-9]{1,4}}', { 
      url: "/{pageNumber:[0-9]{1,4}}" 
     }) 

在此先感謝。

+0

查看$ location,它會幫助你。它有一個方法,可以更改網址。 – katmanco

+0

我剛剛編輯了代碼, ui-sref =「result。(pageNumber)」 我試過這樣但沒有運氣。 – Kanagan

回答

1

嗨,我得到了與另一個人的答案。

只使用狀態,如下

.state('result', { 
    url: '/result', 
    templateUrl: 'tpl/search_result.html' 
}) 
.state('result.pageNumber', { 
    url: '/:pageNumber' 
}); 

,並通過URL像

<a ui-sref="result.pageNumber({pageNumber : pageNumber})">{{ pageNumber }}</a> 

嘗試,得到了完美的答案。