ui bootstrap 分页在 if 标签内不起作用
ui bootstrap pagination not working inside a ng-if tag
我尝试在没有内容可显示时隐藏分页 div。所以我这样写:
<div ng-if="totalItems!=0">
<pagination
boundary-links="true"
total-items="totalItems"
ng-model="currentPage"
ng-change="pageChanged()"
class="pagination"
items-per-page="itemsPerPage"
max-size="7">
</pagination>
</div>
但是点击时,只会触发pageChanged()
功能,currentPage
不会改变。删除 ng-if div outsite 解决了这个问题。
有解决办法吗?
ng-if
创建了一个像 ng-repeat
这样的新作用域,因此 currentPage
在子作用域内并且在主作用域中不可访问。
您可以尝试通过几种方法解决它:
- 使用
ng-show
代替ng-if
- 尽早在主控制器中声明
$scope.currentPage = 1
(不确定这是否有效)
- 改用
ng-model="$parent.currentPage"
- 使用点符号:在控制器中声明 $scope.something 然后使用
ng-model="something.currentPage"
我尝试在没有内容可显示时隐藏分页 div。所以我这样写:
<div ng-if="totalItems!=0">
<pagination
boundary-links="true"
total-items="totalItems"
ng-model="currentPage"
ng-change="pageChanged()"
class="pagination"
items-per-page="itemsPerPage"
max-size="7">
</pagination>
</div>
但是点击时,只会触发pageChanged()
功能,currentPage
不会改变。删除 ng-if div outsite 解决了这个问题。
有解决办法吗?
ng-if
创建了一个像 ng-repeat
这样的新作用域,因此 currentPage
在子作用域内并且在主作用域中不可访问。
您可以尝试通过几种方法解决它:
- 使用
ng-show
代替ng-if
- 尽早在主控制器中声明
$scope.currentPage = 1
(不确定这是否有效) - 改用
ng-model="$parent.currentPage"
- 使用点符号:在控制器中声明 $scope.something 然后使用
ng-model="something.currentPage"