Javascript 如何使用ToDeleteItems数组删除多个嵌套对象
我试图使用一个清单从集合中选择位置,并将它们存储到一个名为ToDelete:[{{u id:String}]的数组中。有了这个数组,我想对Collections对象内部的位置运行它,并删除它们 我将集合ID存储为参数,将数组存储为主体。我已将该阵列记录在控制台中,因此我知道它具有我要删除的ID,并将其正确地传递给服务 mongoose的服务器端功能应该是什么样子?这是我最好的尝试Javascript 如何使用ToDeleteItems数组删除多个嵌套对象,javascript,angular,Javascript,Angular,我试图使用一个清单从集合中选择位置,并将它们存储到一个名为ToDelete:[{{u id:String}]的数组中。有了这个数组,我想对Collections对象内部的位置运行它,并删除它们 我将集合ID存储为参数,将数组存储为主体。我已将该阵列记录在控制台中,因此我知道它具有我要删除的ID,并将其正确地传递给服务 mongoose的服务器端功能应该是什么样子?这是我最好的尝试 //DELETE COLLECTION LOCATIONS collectionRouter.post('remov
//DELETE COLLECTION LOCATIONS
collectionRouter.post('removeLocation/:id', function(req, res, next) {
Collection.update(
{_id: req.params.id},
{$pull: {locations: {_id: {$in:req.body}}}},
function (err, result) {
if (err) {
return res.status(500).json({
title: 'An error occured',
error: err
});
}
res.status(201).json({
message: 'Locations Removed',
obj: result
});
});
});
这是我的收藏品。服务
removeCollectionLocation(collection: Collection, locations: string[]) {
let body = locations;
const headers = new Headers({
'Content-Type': 'application/json'});
const token = localStorage.getItem('token')
? '?token=' + localStorage.getItem('token')
: '';
return this.http.post('http://localhost:3000/collection/removeLocation/' + collection._id + token , body, {headers: headers})
.map((response: Response)=> response.json())
.catch((error: Response)=> Observable.throw(error.json()));
}
谢谢大家。你们可以这样做-
removeCollectionLocation(collection: Collection, locations: string[]) {
let body = locations;
const headers = new Headers({
'Content-Type': 'application/json'});
const token = localStorage.getItem('token')
? '?token=' + localStorage.getItem('token')
: '';
return this.http.post('http://localhost:3000/collection/removeLocation/' + collection._id + token , body, {headers: headers})
.map((response: Response)=> response.json())
.catch(error => Observable.of(`Bad Promise: ${error}`));
}
这是okie,上面的函数没有问题。:(main.bundle.js:576 TypeError:error.json不是CatchSubscriber.selector的函数,它返回的代码是200,不是我提供的代码是,但您可以使用response.json({isSuccess:false,err:err})用于记录错误部分,而不会使系统崩溃functions@hardy谢谢,我应该把它放在收集服务的哪一部分?我把它放在map中的response.json函数中,但它说参数是错误的,结果我需要一个“/”来完成我的路线。