React.js中如何过滤MongoDB返回数组仅保留_id和customername字段?
前端直接处理(已拿到完整返回数据的场景)
直接对Records数组做遍历映射,只保留需要的两个字段即可,示例代码如下:
// 假设MongoDB返回的完整数据存在mongoResponse变量中 const processedData = { Records: mongoResponse.Records.map(item => ({ _id: item._id, customername: item.customername })) }; // 若需要转为JSON字符串,和你给出的示例输出格式完全一致 const resultStr = JSON.stringify(processedData);
数据库查询阶段优化(推荐)
如果可以调整MongoDB的查询逻辑,直接在查询时通过投影配置只返回需要的字段,既减少数据传输量,也不用额外做前端过滤:
- 原生MongoDB驱动查询示例:
// 你的查询条件写在第一个参数位置,第二个参数指定返回字段 db.collection('你的集合名称').find( {}, { projection: { _id: 1, customername: 1 } } )
- Mongoose 查询示例:
// 第二个参数直接指定要返回的字段名即可 YourModel.find({}, '_id customername')
内容的提问来源于stack exchange,提问作者user2601660
相关产品推荐
相关产品推荐

