[英]lodash _.remove not working on an object content
我不能讓 lodash _.remove 在看起來像這樣的對象內容中工作
content: {
code: '8d303377',
type: 'content',
repositoryCode: 'default',
externalLocations:
{
binaries:
{
medium: 'http://localhost:4000/image-medium.jpg',
small: ''
}
}
}
我想刪除帶有空字符串(小)的條目。 我試過這個
_.remove(content.externalLocations.binaries, function () {
return content.externalLocations.binaries[req.params.variant] === req.body.url;
});
req.params.variant的值== 小
我也試過這個
_.forEach(content.externalLocations, function (binary) {
_.remove(binary[req.params.variant], { [req.params.variant]: req.body.url });
});
看起來您正在嘗試從值等於req.body.url
binaries
刪除條目,您可以執行以下操作:
_.each(content.externalLocations.binaries, (value, key, obj) => {
if (req.params.variant === key && req.body.url === value) {
_.unset(obj, key);
}
})
_.remove
狀態的文檔
從數組中刪除謂詞返回真值的所有元素,並返回已刪除元素的數組 [...]
強調我的
您的binaries
對象不是數組。如果要刪除對象屬性,請使用delete
delete content.externalLocations.binaries[req.params.variant];
var content = { code: '8d303377', type: 'content', repositoryCode: 'default', externalLocations: { binaries: { medium: 'http://localhost:4000/image-medium.jpg', small: '' } } }; delete content.externalLocations.binaries.small; console.log(content)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.