检查数组是否包含某些数据

时间:2017-11-16 12:30:55

标签: laravel vue.js components lodash

我在组件

中有2个变量usersfriend

变量users是一个数组。每次迭代都包含idnameemail
friend之外,变量pivot具有相同的结构。

在我的组件文件(.vue文件)中,我需要检查users是否包含friend而不使用循环,以便我可以在v-if条件中使用它。

注意emailid是唯一值。

我该如何检查?单行代码将非常有用。

例如:

users有2次迭代

  • id:1
  • name:First
  • 电子邮件:first@example.com

  • id:2

  • name:Second
  • 电子邮件:second@example.com

friend就像这样

  • id:2
  • name:Second
  • 电子邮件:second@example.com
  • pivot:{...}

2 个答案:

答案 0 :(得分:1)

使用_.find() lodash功能

_.find(users, {id: friend.id});

第一个参数是要检查的数组,第二个参数是要满足的条件。请记住,这将返回数组的特定迭代,而不是true或false,但您可以将其用作条件。如果它返回null则会将其视为false,如果有的话,则将其视为true。

答案 1 :(得分:-1)

尝试使用v-if

<div v-if=":user.friend"></div>