当我尝试使用$each将项目保存到MongoDB时,我得到了一个CastError。我使用FormData发送数组。如果我在后端显示数组,一切都是正确的。我只是不能将其存储到MongoDB中
前端:
let array = ["ONE","TWO","THREE"]
let data = new FormData();
data.append("tags", JSON.stringify(array));
后端:
const update = await newArt.updateOne(
{
$push: {
tags: {
$each: [JSON.parse(req.body.tags)],
},
},
},
{ new: true }
);
转换错误:值"['ONE',
路径"tags"处的"TWO"、"THREE"]"(类型数组)
模式:
tags: {
type: [String],
require: true
},
1条答案
按热度按时间e5njpo681#
您正在使用2个阵列;一个在
req.body.tags
内部,一个在JSON.parse
周围,尝试移除外部:了解它在playground example上的工作原理