如何使用 lodash 检查集合中的所有项目(不符合我的条件的项目除外)?

let allChecked = _.every(this.collection, this.checked);

我有这个现有代码,如果集合中的每个项目的属性都为 true,则该代码将返回 true checked。我想修改它,以便只迭代另一个属性上不具有 true 的项目,而不是迭代集合中的每个项目。disabled即,集合中的项目还有另一个属性。如果此属性设置为 true,我想在此_.every()检查中完全忽略这些项目。


Helenr
浏览 131回答 2
2回答

人到中年有点甜

您只需调用 即可_.reject删除this.collection集合中指定属性为 true 的任何项目。一个例子是这样的_.every(_.reject(this.collection, 'disabled'), this.checked)

智慧大石

只需添加disabled短路检查即可。如果disabled是,true您可以跳过检查:let allChecked = _.every(this.collection, obj => obj.disabled || this.checked(obj));
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript