node.js - 如何使用 ReactJs 在前端获取子文档数据猫鼬
问题描述
我想获取有关收集商的所有信息,其中包括前面使用 ReactJs 的另一个收集人员。使用邮递员,他们返回所有数据,但在前面他们不了解人员的数据我的架构看起来像这样
const commercantSchema = new mongoose.Schema({
typeCom:{
type:String,
required:true
},
numRegistre:{
type:String,
required:true
},
personne:[{
type:ObjectId,
ref:"Personne"
}]
})
const personneSchema = new mongoose.Schema({
nom:{
type:String,
required:true},
email:{
type:String,
required:true},
type:{
type:String,
required:true},
nomResponsable:{
type:String,
required:true},
etat:{
type:Boolean,
default:false }
},{timestamps:true})
接口:
router.get('/allcom',(req,res)=>{
Commercant.find()
.populate({
path: 'personne',
math: {_id:'peronne'},
})
.then(commercants=>{
res.json({commercants})
})
.catch(err=>{
console.log(err)
})
})
在前面
const [data,setData] = useState([])
useEffect(()=>{
fetch('/allcom',{
headers:{
"Authorization":"Bearer "+localStorage.getItem("jwt")
}
}).then(res=>res.json())
.then(result=>{
console.log(result)
setData(result.commercants)
})
},[])
....
解决方案
您可以执行以下操作:
result.commercants.map(arrItem => {return arrItem.personne})