gpt4 book ai didi

javascript - 访问 Express 中的 get 请求返回的对象中的元素时遇到问题

转载 作者:太空宇宙 更新时间:2023-11-04 01:30:04 25 4
gpt4 key购买 nike

我有一个 get 请求,返回使用 Knex 从数据库获取的对象数组,我想使用 .map 返回它们,为它们提供可访问的元素。但最后一个元素是 sum(),所以我只是不知道如何访问它。可能是一个非常简单的问题,但我只是不明白。

下面添加的当前函数返回除总数之外的所有内容。即引用区域作为 res.area 工作。但请求返回的总和为 'sum(areas)': 20。所以我想我想知道如何引用没有变量名称的总和

router.get("/search/:param",function(req,res,next)
{
req.database.from('animals')
.select('animals.name', 'areas.lat', 'areas.lng', req.params.area)
.sum(req.params.area).groupBy('animals.name')
.leftJoin('areas','req.params.area', 'areas.area')
.then((rows) => {
const x = mapFunction(rows)
res.send({query: req.params.area, result: x})
})
})

function mapFunction(results) {
return results.map((res) =>
({area: res.area, lat: res.lat, lng: res.lng, total: res.????}))
}

最佳答案

诀窍是为结果提供可用的名称。这使得以后引用它们变得更加容易。例如:

knex
.from('animals')
.select('animals.name', 'areas.lat', 'areas.lng', req.params.area)
.sum(`${req.params.area} as areaSum`)

这样,总和就可以在结果中以 areaSum 形式提供。

关于javascript - 访问 Express 中的 get 请求返回的对象中的元素时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56389435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com