我的代码如下所示:
router.put('/stories/:story', function(req,res,next){
Story.findById(req.story._id, function(err, story) {
if (err) {
res.send(err);
}
story.scenarios.push(req.body);
story.save(function(err,story) {
if (err) {
res.send(err);
}
res.json(story);
})
});
});
req.body包含一个带有图像和音频的对象。
我希望能够使用新对象更新此数组。
我如何将新对象推送到story.scenario(开始时为null)。
现在我得到一个错误:“无法读取null的属性推送”
有人知道解决方案吗?
最佳答案
story.scenarios
在一开始就是null
,因此您需要将其初始化为[]
,但是由于story.scenarios
可能已经有数据,所以您不想一直都这样做。
story.scenarios = story.scenarios || [];
story.scenarios.push(req.body);
关于angularjs - 如何将对象插入空数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41176005/