首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >V-If内侧V-for,内侧V-for

V-If内侧V-for,内侧V-for
EN

Stack Overflow用户
提问于 2020-11-17 06:16:59
回答 1查看 159关注 0票数 1

我是一个Vue的新手,我正在尝试在两个v-fors中运行一个IF语句。基本上,我尝试将一个对象数组的值与另一个对象数组的值进行比较,如果为真,则从对象数组2中渲染值。

下面是代码。

代码语言:javascript
运行
复制
      <div v-bind:class="[isActive ? 'projectsWorkingOnActive' : 'projectsWorkingOnInactive']" v-for="rec in listOfEmployees" v-bind:key="rec.id" >
        <div v-for="proj in dummyProjectsData" v-bind:key="proj.id">
          <div v-if="rec.name.display_value == proj.task_owner">
            <h3>Projects Working On</h3>
            <ul>
              <li><a href="">{{proj.projects_working_on.project_name}}</a></li>
              <li><submitbutton button_label="Hide Projects" @click="toggleClass()"></submitbutton></li>
            </ul>
          </div>
        </div>
      </div>

这是我的两个对象数组。

代码语言:javascript
运行
复制
    const dummyProjectsData = [
  {
    ID: "44000005501077",
    task_owner: "Denis Denchev",
    projects_working_on: [
      {
      "project_name": "Project-1",
      "project_id": "195000002362044"
      },
      {
      "project_name": "Project-2",
      "project_id": "195000002362045"
      },
      {
      "project_name": "Project-3",
      "project_id": "195000002362046"
      },
    ]
  },
  {
    ID: "44000005501078",
    task_owner: "Jake Jones",
    projects_working_on: [
      {
      "project_name": "Project-2",
      "project_id": "195000002362044"
      },
      {
      "project_name": "Project-5",
      "project_id": "195000002362045"
      },
      {
      "project_name": "Project-3",
      "project_id": "195000002362046"
      },
    ]
  },
]

第二个数组。

代码语言:javascript
运行
复制
 const listOfEmployees = [
  {
    "ID": "44000005527013",
    "name": {
     "display_value": "Denis Denchev",
     "first_name": "Denis",
     "last_name": "Denchev",
     "prefix": "",
     "suffix": "",
    }
  }
]

我做错了什么?一定是我漏掉了什么愚蠢的东西?或者我不能做if语句从两个v-for中取值?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-17 06:40:48

问题是,proj.projects_working_on是一个由多个项目组成的数组,但您试图像访问对象一样访问它的属性。更改为类似以下内容:

代码语言:javascript
运行
复制
<div v-bind:class="[isActive ? 'projectsWorkingOnActive' : 'projectsWorkingOnInactive']" v-for="rec in listOfEmployees" v-bind:key="rec.id" >
  <div v-for="proj in dummyProjectsData" v-bind:key="proj.id">
    <div v-if="rec.name.display_value == proj.task_owner">
      <h3>Projects Working On</h3>
      <ul>
        <li v-for="p in proj.projects_working_on" v-bind:key="p.project_id">
           <a href="">{{ p.project_name }}</a>
        </li>
        <li><submitbutton button_label="Hide Projects" @click="toggleClass()"></submitbutton></li>
      </ul>
    </div>
  </div>
</div>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64866538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档