Falcor - 有没有办法迭代地图

Falcor - Is there a way to iterate a map

到目前为止,我发现我们可以使用 {from: x, to: y} 对数组进行迭代。有没有办法在地图上迭代?

例如我有如下地图:

    companyMap: {
        61: {
            name: 'Apple'
        },
        66: {
            name: 'Microsoft'
        },
        70: {
            name: 'Uber'
        }
    }

有没有办法在这张地图上迭代?或者至少拿到所有钥匙?

您可以要求任意数量的密钥。例如下面的路径集:

["companyMap", [61, 66, 70], "name"]

returns 3 家公司的名字。

要遍历地图,您需要首先建立一个实用的(不是理论上的)您将拥有的键的最大数量。

根据设计,您不能在 Falcor 中调用无限量的数据。如果没有实际的最大值,最好首先重新考虑如何对数据进行分页。

例如,如果您将实用的最大值设置为 70 个键,则需要提出以下请求:

this.model.get(`companyMap[0..70]['name']`);

对于那些在数据集中不存在的键,将不会返回任何内容。