我正在从 faunadb 获取文档,我希望他们的 ID 包含在我发送给客户端的有效负载中。
这就是我获取文档并将其数据作为集合返回的方式
serverClient.query(
q.Map(
q.Paginate(q.Documents(q.Collection('Portfolio')), { size: 999999 }),
q.Lambda(x => q.Get(x))
)
)
.then((ret) => ret.data.map(x => ({ ...x.data, _id: x.ref })))
Run Code Online (Sandbox Code Playgroud)
现在_id是一个参考。当我将其登录到控制台时看起来像这样:
Ref(Collection("Portfolio"), "266565241615155713")
Run Code Online (Sandbox Code Playgroud)
就像这样,当 JSON 字符串化它时:
{"@ref":{"id":"266565241615155713","collection":{"@ref":{"id":"Portfolio","collection":{"@ref":{"id":"collections"}}}}}}
Run Code Online (Sandbox Code Playgroud)
我基本上需要266565241615155713从那个 Ref 中获取 ID 。我怎样才能做到这一点?我试过x.ref['@ref'].id但@ref未定义。
文档在这里对我没有帮助
提前感谢您的任何提示。
在转换为 Json 之前,您应该能够使用ref.id获取 id ,我相信您目前正在执行的情况是:'_id: x.ref',因此只需将其替换为 _id: x.ref.id 应该没事的。
将其转换为 Json 后,您将必须执行 jsonRef.['@ref'].id