Angularjs 防止在隐藏div中加载角度ui滚动

Angularjs 防止在隐藏div中加载角度ui滚动,angularjs,angular-ui,virtualscroll,ui-scroll,Angularjs,Angular Ui,Virtualscroll,Ui Scroll,我有一个angular ui scroll指令(1.3.0)存在于一个div中,默认情况下,它是通过ng show隐藏的。隐藏时,ui scroll仅保持从数据源加载数据,即使ui scroll视口的高度已设置。如果显示div,则其行为正确。所以,现在我的div是1px宽:/ 我相信我可以用ng来解决这个问题,如果要动态地将它添加到DOM中。然而,我希望div能够响应性地隐藏/显示,因此脱离了css 关于如何让ui在隐藏时仅从缓冲区加载1页的建议?多谢各位 您可以尝试通过数据源实现来管理它: $

我有一个angular ui scroll指令(1.3.0)存在于一个div中,默认情况下,它是通过ng show隐藏的。隐藏时,ui scroll仅保持从数据源加载数据,即使ui scroll视口的高度已设置。如果显示div,则其行为正确。所以,现在我的div是1px宽:/

我相信我可以用ng来解决这个问题,如果要动态地将它添加到DOM中。然而,我希望div能够响应性地隐藏/显示,因此脱离了css


关于如何让ui在隐藏时仅从缓冲区加载1页的建议?多谢各位

您可以尝试通过数据源实现来管理它:

$scope.datasource.get = function(index, count, success) {
  // prevent data getting while ui-scroll is invisible
  if (!$scope.isScrollerVisible) {
    return; // or let him request for 1 pack and prevent others, any logic
  }
  // get required data and pass it into success callback
  var result = [];
  for (var i = index; i <= index + count - 1; i++) {
    result.push({text: "item #" + i});
  }
  success(result);
}
$scope.$watch('isScrollerVisible', function(value) {
  if(value) {
    $scope.datasourceAdapter.reload()
  }
});