0度** 2022-10-27 17:00 采纳率: 80%
浏览 35
已结题

侧边栏菜单二级往后菜单重复显示

侧边栏菜单渲染后出现二级菜单三级菜单重复显示问题

img

img

  
          <template
            v-for="(item, index) in menuData[active]
              ? menuData[active].childMenu || []
              : []"
          >
            
            <template v-if="item.childMenu">
              <el-submenu :index="item.sysMenuCode" :key="item.sysMenuVueUrl">
                <template slot="title">
                  {{ item.sysMenuName }}
                </template>
                
                <template v-for="subItem in item.childMenu || []">
                  
                  <template v-if="subItem.childMenu">
                    <el-submenu
                      :index="subItem.sysMenuCode"
                      :key="subItem.sysMenuVueUrl"
                    >
                      <template slot="title">
                        {{ subItem.sysMenuName }}
                      </template>
                      
                      <template v-for="subItem2 in subItem.childMenu || []">
                        
                        <template v-if="subItem2.childMenu">
                          <el-submenu
                            :index="subItem2.sysMenuCode"
                            :key="subItem2.sysMenuVueUrl"
                          >
                            <template slot="title">
                              {{ subItem2.sysMenuName }}
                            </template>
                            
                            <template
                              v-for="subItem3 in subItem2.childMenu || []"
                            >
                              
                              <template v-if="subItem3.childMenu">
                                <el-submenu
                                  :index="subItem3.sysMenuCode"
                                  :key="subItem3.sysMenuVueUrl"
                                >
                                  <template slot="title">
                                    {{ subItem3.sysMenuName }}
                                  </template>
                                  <el-menu-item
                                    v-for="(
                                      fiveItem, i
                                    ) in subItem3.sysMenuName"
                                    :key="i"
                                    :index="fiveItem.sysMenuVueUrl"
                                    >{{ fiveItem.sysMenuName }}</el-menu-item
                                  >
                                </el-submenu>
                              </template>
                              
                              <el-menu-item
                                :index="subItem3.sysMenuVueUrl"
                                :key="subItem3.sysMenuVueUrl"
                                >{{ subItem3.sysMenuName }}</el-menu-item
                              >
                            </template>
                          </el-submenu>
                        </template>
                        
                        <el-menu-item
                          :index="subItem2.sysMenuVueUrl"
                          :key="subItem2.sysMenuVueUrl"
                          >{{ subItem2.sysMenuName }}</el-menu-item
                        >
                      </template>
                    </el-submenu>
                  </template>
                  
                  <el-menu-item
                    :index="subItem.sysMenuVueUrl"
                    :key="subItem.sysMenuVueUrl"
                    >{{ subItem.sysMenuName }}</el-menu-item
                  >
                </template>
              </el-submenu>
            </template>
            
            <template v-else>
              <el-menu-item
                :index="item.sysMenuVueUrl"
                :key="item.sysMenuVueUrl"
              >
                {{ item.sysMenuName }}
              </el-menu-item>
            </template>
          </template>
        </el-menu>
      </el-aside>
  • 写回答

3条回答 默认 最新

  • 管那么多 2022-10-27 17:55
    关注
    <template v-if="subItem3.childMenu">  这个条件通过然后渲染了带下拉箭头的,然后你后面又来个<el-menu-item></el-menu-item>,
    重复显示了,,,有 if 却没有设置else    后面的应该这么写   
    <template v-if="!subItem3.childMenu">  <el-menu-item></el-menu-item></template>
    ```javascript
    
    
    

    ```

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月4日
  • 已采纳回答 10月27日
  • 创建了问题 10月27日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测