如何将查询的数据转换为数组 FaunaDB 打字稿?
How to transform queried data to an array FaunaDB typescript?
我可以在控制台中显示我的分页查询(FaunaDB、FQL)的结果,它显示为一个 javascript 对象。然而,我无法访问所述对象的属性,更不能使用扩展运算符将其转换为数组。我该怎么做?
我知道有一个分页助手,但无法使其工作,如上所述。这是我正在尝试的最新代码:
var array=[]
qu(q.Map(
q.Paginate(q.Match(q.Index('FeesByIndex'))),
q.Lambda(x => q.Get(x))
)).then(res => { console.log(res); array=[...res] })//the log really looks like a js object and res is said to be one
它说类型对象不是数组类型。此外,据说 属性 数据不存在于 res 上,尽管它在控制台中显然存在
你会尝试这种方式吗?
var array=[]
qu(q.Select(['data'],
q.Map(
q.Paginate(q.Match(q.Index('FeesByIndex'))),
q.Lambda(x => q.Get(x))
)
)
).then(res => { console.log(res); array=[...res] })
您没有指定索引项,Lambda 有语法错误。
响应对象有一个数据属性,是一个列表。
在我的存储库中,如果查询 returns 多个对象:
,我会使用此代码段
const result: Fee[] = [];
await CLIENT.query(
q.Map(
q.Paginate(
q.Match(
q.Index('FeesByIndex'),
'index term',
),
),
q.Lambda('fees', q.Get(q.Var('fees'))),
)
)
.then(faunaResponse => {
const dataArray = faunaResponse.data;
dataArray.forEach(s => {
const data = s.data;
result.push({
id: data.id,
yourProp1: data.yourProp1,
yourProp2: data.yourProp2,
});
});
})
.catch(e => logger.error(e));
我可以在控制台中显示我的分页查询(FaunaDB、FQL)的结果,它显示为一个 javascript 对象。然而,我无法访问所述对象的属性,更不能使用扩展运算符将其转换为数组。我该怎么做?
我知道有一个分页助手,但无法使其工作,如上所述。这是我正在尝试的最新代码:
var array=[]
qu(q.Map(
q.Paginate(q.Match(q.Index('FeesByIndex'))),
q.Lambda(x => q.Get(x))
)).then(res => { console.log(res); array=[...res] })//the log really looks like a js object and res is said to be one
它说类型对象不是数组类型。此外,据说 属性 数据不存在于 res 上,尽管它在控制台中显然存在
你会尝试这种方式吗?
var array=[]
qu(q.Select(['data'],
q.Map(
q.Paginate(q.Match(q.Index('FeesByIndex'))),
q.Lambda(x => q.Get(x))
)
)
).then(res => { console.log(res); array=[...res] })
您没有指定索引项,Lambda 有语法错误。
响应对象有一个数据属性,是一个列表。
在我的存储库中,如果查询 returns 多个对象:
,我会使用此代码段 const result: Fee[] = [];
await CLIENT.query(
q.Map(
q.Paginate(
q.Match(
q.Index('FeesByIndex'),
'index term',
),
),
q.Lambda('fees', q.Get(q.Var('fees'))),
)
)
.then(faunaResponse => {
const dataArray = faunaResponse.data;
dataArray.forEach(s => {
const data = s.data;
result.push({
id: data.id,
yourProp1: data.yourProp1,
yourProp2: data.yourProp2,
});
});
})
.catch(e => logger.error(e));