如何使用不可变来移除深层属性
How to remove deep properties using Immutable
我有以下对象作为不可变映射:
{
"email": {
"events": {},
"value": "test@mail.com"
},
"name": {
"events": {},
"value": "My Name"
}
}
使用不可变,我如何删除所有对象的events
属性?类似于(伪代码):
fields.deleteIn(['*', 'events'])
或者(附加问题),最好只是过滤,以便只保留value
。
明白了
fields = fields.map(field => ({ value: field.get('value') }))
更新:12/7/2016
实际上,这是一种懒惰,并没有真正删除字段。这样更好:
fields = fields.map(field => field.delete('events'))
相关文章:
- Ember服务在注入组件并在计算属性中使用后是未定义的
- 在 javascript css 属性中使用变量
- 在剑道窗口的模板属性中使用AngularJS代码
- 未捕获的类型错误:无法读取 null 的属性“removeChild”(使用 Instagram 的 JSONP 响应)
- jQuery:在 animate 属性上使用变量
- 为什么 name 属性无法使用 JavaScript 进行设置
- CSS 属性在使用 innerHTML 时被覆盖
- 将 jsViews/jsRender 与重新调整为字典条目的属性一起使用
- 为什么我们被教导将document.getElementById(“id”)分配给一个变量,然后将该变量与属性一起使用
- 如何使用json对象作为li元素的id属性或使用javascript锚定标记id
- Three.js无法获取贴图和颜色属性'使用Canvas渲染器
- 如何在 html 元素属性中使用 Angular 2 外推法
- 获取同级的 name 属性,使用它来调整具有等效 ID 的元素的值
- Angular / JADE - 为什么我在尝试在 ng-href 属性中使用 Angular 标签时收到错误“意外令牌
- 如何检测 javascript 中无效属性的使用
- Javascript - 获取对象的属性并使用“data-id”打印在元素上
- 是否可以将动画与 jQuery 中的属性一起使用
- 如何使用 jQuery 在标签的 for 属性中使用子字符串获取标签元素的值
- 在对象中的属性两边使用引号
- 在对象属性上使用 jQuery 方法