psmb / mapreduce
Map/Reduce 流查询操作
v2.0
2017-02-01 12:55 UTC
Requires
- neos/neos: ~3.0
This package is auto-updated.
Last update: 2024-09-14 09:12:29 UTC
README
本包提供了 .map()
和 .reduce()
流查询操作。这可能很有用,对吧?
安装
composer require 'psmb/mapreduce:@dev'
使用方法
Map
获取当前流查询上下文中的所有项目,并使用给定的 Eel 操作转换每个值。有一个名为 value
的上下文变量可用,其值为当前节点。
例如,这将为您提供给定节点的所有子节点的标识符数组
${q(node).children().map('value.identifier')}
参见:https://mdn.org.cn/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map
Reduce
将 Eel 表达式作为第一个参数,初始值作为第二个参数。注入 previousValue
、currentValue
、index
和 array
上下文变量。
例如,假设您有一个订单节点集合,每个节点都有一个价格属性。现在让我们尝试获取所有给定节点的总价
${q(node).children('orders').reduce('previousValue + currentValue.properties.price', 0)
参见:https://mdn.org.cn/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce