我如何使用 lodash 检查集合中的每个项目,除了那些不符合我条件的项目?
How do I use lodash to check every item in a collection except those that dont meet my condition?
let allChecked = _.every(this.collection, this.checked);
我有这个现有代码,如果集合中的每个项目都对 checked
属性 为真,则 returns 为真。我想修改它,而不是迭代集合中的每个项目,只有在另一个 属性 上没有 true 的项目被迭代。即,集合中的项目还有另一个名为 disabled
的 属性。如果此 属性 设置为真,我想在此 _.every()
检查中完全忽略这些项目。
您只需调用 this.collection
上的 _.reject
即可删除集合中指定 属性 上的任何项目。
例如 _.every(_.reject(this.collection, 'disabled'), this.checked)
只需在短路检查中添加disabled
。如果 disabled
是 true
你可以跳过检查:
let allChecked = _.every(this.collection, obj => obj.disabled || this.checked(obj));
let allChecked = _.every(this.collection, this.checked);
我有这个现有代码,如果集合中的每个项目都对 checked
属性 为真,则 returns 为真。我想修改它,而不是迭代集合中的每个项目,只有在另一个 属性 上没有 true 的项目被迭代。即,集合中的项目还有另一个名为 disabled
的 属性。如果此 属性 设置为真,我想在此 _.every()
检查中完全忽略这些项目。
您只需调用 this.collection
上的 _.reject
即可删除集合中指定 属性 上的任何项目。
例如 _.every(_.reject(this.collection, 'disabled'), this.checked)
只需在短路检查中添加disabled
。如果 disabled
是 true
你可以跳过检查:
let allChecked = _.every(this.collection, obj => obj.disabled || this.checked(obj));