У меня есть объект:
ids = [ "-LIof_e0hPtXKtkc4Uh9", "-LIjBcGO7m7VQ-B3pfYt" ]
Если я выполняю итерацию, используя .map
функцию lodash
_.map(ids, (userID, key) => {
console.log('Lopping userId',userID);
})
, это дает мне значение каждого идентификатора.
Теперь, когда я пытаюсь удалить его, используя _remove
, он работает не так, как ожидалось.
_.remove(ids, (value, key, obj) => value == idToBeRemoved);
Тем не менее, в ids
Object нет никакой разницы.
Ядействительно новый для angular4 и впервые использующий lodash.Я просто хотел удалить значение из ids
объекта и получить оставшийся объект.
Печать консоли.
Я использую Firebase и пытаюсьудалить данные после извлечения их из firebase:
deleteTransactWith(transactWithKey,transactWithUser) {
let currentUser = this._authService.getLoggedInUser();
console.log(transactWithUser.groups)
console.log(Object.keys(transactWithUser.groups).length)
console.log('key To remove',transactWithKey)
for (var key in transactWithUser.groups) {
if (transactWithUser.groups.hasOwnProperty(key)) {
let group = this.firebase.object(`/url/${currentUser.$key}/${key}`);
group.snapshotChanges().take(1).subscribe((groupData: any) => {
groupData = groupData.payload.toJSON();
//console.log('not removed',groupData.userIds)
console.log('key',transactWithKey)
_.remove(groupData.userIds, (value) => value == transactWithKey);
//_.pull(groupData.userIds, transactWithKey);
console.log('removed',groupData.userIds)
});
}
}