51Testing软件测试论坛

标题: vue v-for循环map时获取不到元素 [打印本页]

作者: 测试积点老人    时间: 2020-9-4 11:35
标题: vue v-for循环map时获取不到元素
数据是这样的,map里面嵌套了一个子map subMenu,但是subMenu的右侧显示为Object
v-for的时候可以获取到subMenu的数据,用item.menu的时候是获取不到对应的值的。
如果不用item.menu而是直接用menu却又可以获取到。请看前端代码
  1. <el-menu background-color="#252526" text-color="#fff" active-text-color="#ffd04b">
  2.          <!-- 一级菜单区域 -->
  3.          <el-submenu :index="item.menu_id + ''" v-for="item in menuList" :key="item.menu_id">
  4.            <!-- 一级菜单模板区域 -->
  5.            <template slot="title">
  6.              <i class="el-icon-location"></i>
  7.              <span>{{item.menu}}</span>
  8.            </template>
  9.            <!-- 二级菜单区域 -->
  10.            <el-menu-item :index="subItem.menu_id + ''" v-for="subItem in item.subMenu" :key="subItem.menu_id">
  11.              <template slot="title">
  12.                <i class="el-icon-location"></i>
  13.                <span>{{subItem.menu}}</span>
  14.              </template>
  15.            </el-menu-item>
  16.          </el-submenu>
  17.        </el-menu>

  18. js代码:

  19. async getMenuList() {
  20.      this.$http.get('/manager/getMenu').then(
  21.        response => {
  22.            if(response.data.code!==200) {
  23.                return this.$message.error("左侧菜单获取失败!");
  24.            }
  25.            this.menuList = response.data.data;
  26.            console.log(this.menuList);
  27.        },
  28.        error => {
  29.          return this.$message.error("左侧菜单获取失败!");
  30.        }
  31.      );
  32.    }
复制代码
中如果为{{subItem}}则页面显示效果为

中如果为{{subItem.menu}}则页面显示效果为

是没有办法获取到相应的值。
各位大神们,请问这是什么原因导致的?如何解决?



作者: 郭小贱    时间: 2020-9-7 09:26
可以参考这个链接的回答看看https://ask.csdn.net/questions/1077598
作者: 海海豚    时间: 2020-9-7 09:39
http://quan.51testing.com/pcQuan/chat/2960 参考下这个
作者: qqq911    时间: 2020-9-7 10:20
用了vue就用配套的v-for啊
作者: bellas    时间: 2020-9-7 11:46
参考下这个链接https://ask.csdn.net/questions/1077598
作者: jingzizx    时间: 2020-9-7 13:08
要好好理一下整个使用方式




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2