npm 包 nglinq 使用教程

阅读时长 4 分钟读完

介绍

ngLinq 是基于 Linq-to-Object 库的 AngularJS 连接器,在大型数据集上提供方便的查询功能。ngLinq 不需要任何后端服务器即可工作。使用 ngLinq 可以直接在浏览器内部查询 Array 数组。

安装

通过 npm 进行安装,命令如下:

使用方法

引入

引入 ngLinq:

或者使用 npm 安装之后,在自己的 Angular 项目中引入:

基本查询

下面是 ngLinq 的基本查询方法:

-- -------------------- ---- -------
--- ---- - -- ----- ------- ---- --- ------- ------ --
            - ----- -------- ---- --- ------- -------- --
            - ----- ------ ---- --- ------- ------ ---

--- ----- - -----------------
    -------- -- ----- - -- -- -------- -- -------
    --------- -- --------

--- ------ - ----------------
-- -- -------

在上面的代码中,我们从一个包含三个人员信息的数组中查询出了男性且年龄大于 20 岁的人员姓名。

支持的方法

ngLinq 支持的方法有:

  • where: 选择满足指定条件的元素,并返回一个新的序列
  • select: 将序列元素转换为新的类型,并返回一个新的序列
  • orderBy: 根据指定条件返回升序序列,可以使用多个 orderBy 进行级联排序
  • orderByDescending: 根据指定条件返回降序序列,可以使用多个 orderByDescending 进行级联排序
  • groupBy: 通过指定关键字将序列分组,并返回一个新的序列
  • groupByMany: 通过指定多个关键字将序列分组,并返回一个新的序列
  • distinct: 返回序列中去重后的元素
  • first: 返回满足条件的第一个元素,如果不存在则返回 undefined
  • last: 返回满足条件的最后一个元素,如果不存在则返回 undefined
  • single: 返回一个或零个满足指定条件的元素,如果序列中没有符合条件的元素,则返回 undefined
  • skip: 返回跳过指定元素后的新序列
  • take: 返回指定数量的元素组成的新序列
  • aggregate: 对序列中的元素执行累加操作,并返回累加结果
  • join: 连接两个序列中的元素,并返回一个新序列
  • any: 返回序列中是否包含满足指定条件的元素
  • all: 返回序列中是否所有元素都满足指定条件
  • count: 返回序列中元素的数量
  • sum: 返回序列中元素的总和
  • average: 返回序列中元素的平均数
  • max: 返回序列中元素的最大值
  • min: 返回序列中元素的最小值

高级查询

ngLinq 支持一些高级查询操作。下面是一个示例,展示了如何使用 groupBy 和 orderBy 来执行高级查询:

-- -------------------- ---- -------
--- ---- - -- ----- ------- ---- --- ------- ------ --
            - ----- -------- ---- --- ------- -------- --
            - ----- ------ ---- --- ------- ------ ---

--- ----- - -----------------
    ---------- -- ---------
    -------------------- -- ----------
    --------- -- - ------ - ------- -------- ------ ---------- ----------- ----------- -- ------ -- ---

--- ------ - ----------------
-- -- --------- ------- ------ -- ----------- ------ -------- --------- ------ -- ----------- ----

在上面的代码中,我们首先将数组按照性别分组,然后按照每个组包含的元素数量倒序排列。最后,我们将结果映射为一个包含性别、人数以及平均年龄的对象数组。这样我们就获得了每种性别的人数和平均年龄。

总结

ngLinq 是一个非常简单,却又实用的库,可以帮助我们在 AngularJS 应用中更方便地进行数组操作。希望本篇文章能够对你理解 ngLinq 的使用有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600560b481e8991b448defe5

纠错
反馈