如何在 ngGridEventScroll 上使用页面滚动?

2024-01-01

使用ag Grid v2.X,我试图开发一个网格,当页面滚动(不是网格滚动)到达底部时加载更多数据。

通过搜索类似的问题,我找到了解决方案第一个问题: ngGrid 必须具有动态高度,所以我做了这个

.ngViewport{ height:auto !important; } .ngCanvas, .ngViewport, .ngRow, .ngFooterPanel, .ngTopPanel { width: 100% !important; } .ngRow { border-bottom:none !important; }

这带我去我的第二个问题。我需要通过滚动加载数据,我发现:ngGridEventScroll, but o仅在使用 ngGrid 实习生滚动时触发,我需要页面滚动

  $scope.$on('ngGridEventScroll', function () {
        $scope.currentDataPosition++;
        $scope.setPagingData($scope.dataArray, $scope.currentDataPosition, $scope.pagingOptions.pageSize);
    });

因此,解决方案 1 破坏了解决方案 2,因为 ngGridEvent Scroll 不再具有实习滚动。

 $scope.setPagingData = function (data, page, pageSize) {
        cfpLoadingBar.start();
        var pagedData = data.slice((page - 1) * pageSize, page * pageSize, page * pageSize);
        $scope.totalServerItems = data.length;
        $scope.myData = pagedData;
        cfpLoadingBar.complete();
    };

 $scope.gridOptions = {
        data: 'myData',
        virtualizationThreshold: 50,
        enableRowSelection: false,
        enablePaging: false,
        enableSorting: false,
        showFooter: false,
        pagingOptions: $scope.pagingOptions,
        filterOptions: $scope.filterOptions,
    }

可以做什么?


您可以使用 ngInfiniteScroll (https://sroze.github.io/ngInfiniteScroll/index.html https://sroze.github.io/ngInfiniteScroll/index.html)并应用以下策略。

在你的控制器中

    $scope.limit = 50; // Initial limit (make sure its enough to cover the whole page, otherwise the raiseLimit function might not be called)
    $scope.raiseLimit = function() { // function called by ngInfiniteScroll
         if ( $scope.limit < data.length) {
             $scope.limit += 10; // adjust to your need
         } else {
             $scope.dataLoaded = true;
         }
    }
    $scope.dataLoaded = false; // prevent useless call
    $scope.myData = $filter('limitTo')(data, $scope.limit); // Do not forget to inject $filter into your controller

在你的html中

    <div infinite-scroll='raiseLimit()' infinite-scroll-disabled='dataLoaded'>
        <!-- put your grid with dynamic height here -->
    </div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 ngGridEventScroll 上使用页面滚动? 的相关文章

  • 有没有办法在 React 中自动播放音频而不使用 onClick 事件?

    我在尝试在 componentDidMount 中播放音频时收到此错误 未捕获 承诺中 DOMException play 失败 因为用户没有先与文档交互 componentDidMount document getElementById
  • Twitter Bootstrap - 下拉菜单 - 箭头键不适用于 Firefox 中的输入标签

    要求 我想在带有用户名和密码字段的下拉菜单中放置一个登录表单 我可以做到这一点 除了以下问题之外 一切正常 Issue 打字时我无法使用箭头键 上 下 firefox 当输入位于下拉代码之外时 这很有效 这适用于其他浏览器 例如 googl
  • 纯 JS 相当于 Jquery eq()

    jquery 的纯等价物是什么eq 例如 我怎样才能实现 class1 class2 eq 0 text 1254 在纯 JavaScript 中 要获取数组中的元素索引 可以使用 在 JavaScript 中 因此 要重现您的代码 您可以
  • Angular UI-Router:多个 URL 到单一状态

    我已经开始使用 Angular 的 ui router 并且我正在尝试弄清楚如何让多个 URL 引用单个状态 例如 orgs 12354 overview retyrns the same pages as org overview 我的
  • Ajax 内容和 jQuery 动画效果

    我正在尝试使用 jQuery 动画效果为 WordPress 帖子制作 Ajax 内容 问题是第一个动画 在本例中 fadeOut 工作正常 但第二个 FadeIn 或我尝试使用的任何动画效果没有对新内容生效 加载的内容只是出现 没有任何效
  • jquery 中可点击 div 中的按钮

    我有整个 div 您可以单击它来切换该 div 的主要部分 问题是我在该 div 中也有可点击的按钮 当我点击它时 它会执行它应该做的事情 但同时也会切换整个 div 我怎样才能禁用它 Use event stopPropagation 单
  • IE localStorage 事件失火

    在 Internet Explorer 9 和 10 中 localStorage 实现意外地触发事件 这里有很棒的线索 Chrome 的 localStorage 实现存在错误 https stackoverflow com questi
  • Javascript location.href 到 mailto 触发 GET HTTP,该 HTTP 在 Chrome 中被取消

    我有一个按钮可以触发以下 javascript 函数 function sendEmail var mail mailto email protected cdn cgi l email protection location href m
  • JavaScript 错误:MVC2 视图中的条件编译已关闭

    我试图在 MVC2 视图页面中单击时调用 JavaScript 函数 a href Select a JavaScript 函数 function SelectBenefit id code alert id alert code 这里 b
  • 检查浏览器空闲的替代方法

    我有一个简单的网络信息亭 在鼠标未使用 jQuery 移动 30 秒后显示用户操作提示 var i null body wrap mousemove function clearTimeout i overlay fadeOut i set
  • 为什么我的 D3 SVG 图上的轴不会更新?

    I have 简单的 D3 散点图 http www raxacoricofallapatorius com test scattertest html我在显示数据的几个不同属性之间切换 但是虽然我可以更改数据点 并按照我想要的方式进行转换
  • 从请求url获取hash参数

    我有这样的网址 http www coolsite com daily plan id 1 http www coolsite com daily plan id 1解析该字符串并读取哈希值 id 之后的值 的最简单方法是什么 谢谢 在客户
  • 离子初始加载时间

    我正在使用 Ionic 构建一个简单的应用程序 但我的应用程序在冷启动时的初始加载时间方面存在性能问题 这是我所做的 collection repeat 代替带有 track by 的 ng repeat 原生滚动 overflow scr
  • 如何使用 jQuery 过滤 DropDownList 中的选项

    我有 2 个 DropDownList 第一个 DropDownList 有 4 个选项 第二个 DropDownList 有 20 个选项 我想要一个选项value 1在第一个 DropDownList 中选择我在第二个 DropDown
  • ‘state’未定义 no-undef

    我使用教程来学习 React 但我很快就陷入困境 在教程中 他们使用以下代码 import React Component from react class Counter extends Component state count 0 r
  • highchart堆积柱每个类别的总数据

    我想获取每个类别的总数据 这point stackTotal只给出活动数据的总数 从我粘贴的代码示例中 我想知道每种水果的总消耗量 因此 即使我单击右上角图例上的乔的名字 这使得堆叠图表上的所有乔信息都处于非活动状态 我仍然可以知道约翰 简
  • Array.of 与“[ ]”。何时使用 Array.of 而不是“[ ]”?

    当我发现时我正在读一些书Array of https developer mozilla org en docs Web JavaScript Reference Global Objects Array of 根据 MDN Array o
  • VS Code 扩展 - 获取完整路径

    我正在为 VS Code 编写一个插件 我需要知道调用扩展的文件的路径 无论是从编辑器上下文菜单或资源管理器上下文菜单调用还是用户只需键入扩展命令 function activate context get full path of the
  • 如何使用文本输入来定位?

    我想使用 jQuery 通过文本框转到锚点 例如 我想使用以下形式
  • Safari 扩展将消息发送到特定选项卡

    有没有办法从全局页面发送消息到特定选项卡 我目前正在做的是 在创建选项卡时 注入的脚本会创建一个唯一的 ID 并将包含该编号的消息发送到全局页面 并且全局页面会保存该编号 如果全局页面需要发送一些数据到一个tab 即 tab 3 然后全局页

随机推荐

  • 为什么在堆排序中使用平面列表?

    In heapsort 数据存储在称为 heap 我见过的几乎所有实现都使用平面列表对于数据结构 有人可以向我解释这是为什么吗 为什么不使用嵌套数组 or an 二叉树的实例 显式不是比隐式更好吗 是因为遍历结构等实现困难 还是其他原因 如
  • 如何使用 XPath 仅选择可见元素?

    我有一个GWT http code google com webtoolkit 我正在尝试使用它编写一些测试的应用程序Selenium http seleniumhq org 我使用 XPath 来识别测试页面上的元素 使用id不会像id值
  • php:回显“”,打印(),printf()

    有没有更好的方法用PHP将数据输出到html页面 如果我想在 php 中用一些 var 制作一个 div 我会写类似的东西 print div var div or echo div var div 这样做的正确方法是什么 或者更好的方法
  • 如何在不修改 jquery.validate.unobtrusive.min.js 的情况下重写 JQuery unobtrusive 方法?

    我想重写 jquery validate unobtrusive js 中的 onErrors 方法 以将错误消息显示为 html 元素的超链接 但是 我不想更改 jquery validate unobtrusive js 中的方法 因为
  • VB.NET 中的十六进制到 8 位无符号数组

    我有一个十六进制值 07A5953EE7592CE8871EE287F9C0A5FBC2BB43695589D95E76A4A9D37019C8 我想将其转换为字节数组 NET 3 5 中是否有一个内置函数可以完成这项工作 或者我是否需要编
  • 有没有办法为我的基于平台的Python应用程序提供条件requirements.txt文件?

    我编写了一个与 Linux 和 Windows 平台兼容的 python 应用程序 然而有一个问题 我需要的 Windows 的 python 软件包之一与 Linux 不兼容 幸运的是 还有另一个软件包可以在 Linux 上提供相同的功能
  • 如果 char 数组是 Java 中的对象,为什么打印它不显示其哈希码?

    打印 char 数组不显示哈希码 class IntChararrayTest public static void main String args int intArray 0 1 2 char charArray a b c Syst
  • 有 BOINC 编程经验吗?

    我被 BOINC 吸引是因为我的一个小项目 我听说过 BOINC 但没有太多了解它的工作原理 主要是因为我现在专注于其他优先事项 我想知道的是 你们中是否有人真正尝试过为 BOINC 编程并让程序在分布式计算机网络上运行 我特别对以下问题感
  • Kotlin:什么情况下会发生隐式转换?

    我是 Kotlin 的初学者 我最熟悉Python 刚刚读完基础Java教程https docs oracle com javase tutorial java index html https docs oracle com javase
  • 可以为 jQuery 前置添加动画吗?

    我在单击按钮时将一些数据添加到我的页面中 而不是立即填充到页面上 我想知道是否有一种方法可以对数据进行动画处理prepend using slideToggle或 CSS 动画 这是我当前的脚本 var data data html var
  • 为什么Android API中有这么多的浮动?

    Java 中默认的浮点类型是 double 如果你硬编码一个常量 比如2 5在你的程序中 Java会自动将其变为双精度 当您对浮点数或整数执行可能受益于更高精度的操作时 该类型将 提升 为双精度 但在 Android API 中 从音量到矩
  • 以内容长度分隔的消息正文过早结束(预期:

    我正在尝试在 apache httpclient 的帮助下获取 HTTP 响应 我成功获取标头 但当我尝试获取内容时它会引发异常 例外是 org apache http ConnectionClosedException Premature
  • (xcode 5) ibtool 失败,退出代码为 255

    有人能解决这个问题吗 我看过其他答案 但似乎没有一个对我有用 我可以正常运行其他项目 但我当前的项目因上述错误而失败 我想不出明显的原因 Clean 运行正常 没有代码错误 构建项目会导致此问题 我正在运行 xcode 5 我尝试重新安装模
  • Hadoop 无法完成作业,因为“设备上没有剩余空间”

    我正在尝试运行一个非常简单的 hadoop 作业 它是经典 wordCount 的修改版 它不是对单词进行计数 而是对文件中的行进行计数 我想用它来清理一堆我知道有重复的大日志文件 每个大约 70GB 每一行都是一个 记录 因此我感兴趣的是
  • 为什么使用 IList 或 List?

    我知道已经有很多关于此的帖子 但它仍然让我感到困惑 为什么要传入像 IList 这样的接口并返回像 IList 这样的接口而不是具体列表 我读了很多帖子 说这如何使以后更改实现变得更容易 但我只是不完全明白它是如何工作的 说一下我是否有这个
  • 使用请求负载模拟 HTTP 请求和响应

    我使用以下代码来模拟 HTTP 请求和响应对象节点模拟http https github com howardabrams node mocks http var request httpMocks createRequest method
  • 在 Rails 应用程序中启用 2 个不同的模型与同一张表对话

    我遇到了一些集成问题 我有两个模型需要映射 以便它们能够与同一张表对话 因此 一个模型具有一些映射到表中相应列的属性 对于另一个模型也是如此 我听说过别名 这是一种可以使用的技术 如有帮助 将不胜感激 谢谢 您创建两个模型并定义相同的 ta
  • 如何将 Sass 和 CSS 模块与 create-react-app 一起使用?

    我正在使用 FileName module scss 来设计我的反应元素 如下所示 this is my component import React from react import Aux from hoc Aux import cl
  • 我从未听说过的 fileinfo 和 mime 类型

    我对哑剧类型并不陌生 但这很奇怪 通常 文本文件会被认为是文本 纯 mime 但现在 在实现 fileinfo 之后 这种类型的文件现在被认为是 text x pascal 我有点担心 因为我需要确保在允许用户上传之前设置正确的 mime
  • 如何在 ngGridEventScroll 上使用页面滚动?

    使用ag Grid v2 X 我试图开发一个网格 当页面滚动 不是网格滚动 到达底部时加载更多数据 通过搜索类似的问题 我找到了解决方案第一个问题 ngGrid 必须具有动态高度 所以我做了这个 ngViewport height auto