城内网
城内网
  • 发布:2022-07-19 19:26
  • 更新:2022-07-19 19:26
  • 阅读:491

【报Bug】uniapp hello项目,动态菜单不能显示问题

分类:uni-app

产品分类: uniapp/H5

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10

HBuilderX类型: 正式

HBuilderX版本号: 3.4.14

浏览器平台: Chrome

浏览器版本: 10

项目创建方式: HBuilderX

示例代码:
data(){  
        return {  
            list:[]  
        }  
      },  
    onLoad(){  
        this.getMenu()        
       },  

        getMenu(){  
            var menu=[]  
            var that=this  
            uni.getStorage({  
                key: 'user',  
                success: function (res) {  
                    console.log(res.data)  

                    //加一级菜单  
                     for(var i=0;i<res.data[14].length;i++){  
                          var obj={};  
                          obj.id='topmenu'+i  

                          obj.name=res.data[14][i].name  
                          obj.open=false  
                          obj.pages=[]  

                          //加子菜单  
                         for(var j=0;j<res.data[13].length;j++){  
                            if(res.data[13][j].pid==res.data[14][i].id){  
                              obj.pages.push({name:res.data[13][j].name,url:res.data[13][j].route,img:res.data[13][j].icon})    
                            }  
                         }  
                         menu.push(obj)  
                        }  
                     that.list=menu  
                }  
              });         
        }

操作步骤:

不显示

预期结果:

不显示

实际结果:

不显示

bug描述:

uniapp hello项目,宽屏适应时,有问题: 如果是静态菜单,当在h5显示,leftwindow有菜单,没有问题,官方是这样的; 但如果是动态菜单时,leftwindow不显示菜单。如下代码

list是一个数组,里面菜单项是动态获取的。这种方式有问题。

    data(){  
        return {  
            list:[]  
        }  
      },  
    onLoad(){  
        this.getMenu()        
       },  

        getMenu(){  
            var menu=[]  
            var that=this  
            uni.getStorage({  
                key: 'user',  
                success: function (res) {  
                    console.log(res.data)  

                    //加一级菜单  
                     for(var i=0;i<res.data[14].length;i++){  
                          var obj={};  
                          obj.id='topmenu'+i  

                          obj.name=res.data[14][i].name  
                          obj.open=false  
                          obj.pages=[]  

                          //加子菜单  
                         for(var j=0;j<res.data[13].length;j++){  
                            if(res.data[13][j].pid==res.data[14][i].id){  
                              obj.pages.push({name:res.data[13][j].name,url:res.data[13][j].route,img:res.data[13][j].icon})    
                            }  
                         }  
                         menu.push(obj)  
                        }  
                     that.list=menu  
                }  
              });         
        }  
2022-07-19 19:26 负责人:无 分享
已邀请:

该问题目前已经被锁定, 无法添加新回复