vue组件递归

        管理系统中很多这样树形菜单显示的,这里要用到组件的递归来完成,这里我们来学习下vue关于组件递归的实现。

实现原理

       递归的原理无非就是自己调用自己,来实现无限循环,但是递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。否则会无限死循环,程序报错。

代码实现

子组件


父组件


数据类型

menuList: [

        {

          id: "2",

          resourceName: "微信公众号",

          resourceDes: "",

          resourceIco: "el-icon-success",

          resourceType: "2",

          parentId: "",

          appId: "2",

          resourceUrl: "",

          resourceAttr: ""

        },

        {

          id: "3",

          resourceName: "一级",

          resourceDes: "",

          resourceIco: "el-icon-warning",

          resourceType: "2",

          parentId: "",

          appId: "4aab7a01a8304b7f8f1906073169a30f",

          resourceUrl: "",

          resourceAttr: "",

          children: [

            {

              id: "4",

              resourceName: "二级",

              resourceDes: "",

              resourceIco: "el-icon-circle-plus",

              resourceType: "2",

              parentId: "3",

              appId: "4aab7a01a8304b7f8f1906073169a30f",

              resourceUrl: "/app/unitList",

              resourceAttr: "",

              children: [

                {

                  id: "4-1",

                  resourceName: "三级",

                  resourceDes: "",

                  resourceIco: "el-icon-circle-close",

                  resourceType: "2",

                  parentId: "4",

                  appId: "4aab7a01a8304b7f8f1906073169a30f",

                  resourceUrl: "/app/unitList",

                  resourceAttr: "",

                  children: [

                    {

                      id: "4-1-1",

                      resourceName: "四级",

                      resourceDes: "",

                      resourceIco: "el-icon-date",

                      resourceType: "2",

                      parentId: "4-1",

                      appId: "4aab7a01a8304b7f8f1906073169a30f",

                      resourceUrl: "/text",

                      resourceAttr: ""

                    }

                  ]

                }

              ]

            },

            {

              id: "5",

              resourceName: "部门管理",

              resourceDes: "",

              resourceIco: "el-icon-document",

              resourceType: "2",

              parentId: "3",

              appId: "4aab7a01a8304b7f8f1906073169a30f",

              resourceUrl: "/app/deptList",

              resourceAttr: ""

            },

            {

              id: "3-5",

              resourceName: "用户管理",

              resourceDes: "",

              resourceIco: "el-icon-edit",

              resourceType: "2",

              parentId: "3",

              appId: "4aab7a01a8304b7f8f1906073169a30f",

              resourceUrl: "/app/usersList",

              resourceAttr: ""

            },

            {

              id: "3-6",

              resourceName: "授权",

              resourceDes: "",

              resourceIco: "el-icon-location-outline",

              resourceType: "2",

              parentId: "3",

              appId: "4aab7a01a8304b7f8f1906073169a30f",

              resourceUrl: "",

              resourceAttr: ""

            }

          ]

        },

        {

          id: "6",

          resourceName: "应用管理",

          resourceDes: "",

          resourceIco: "el-icon-menu",

          resourceType: "2",

          parentId: "",

          appId: "4aab7a01a8304b7f8f1906073169a30f",

          resourceUrl: "/app/appManage",

          resourceAttr: ""

        },

        {

          id: "8",

          resourceName: "应用管理New",

          resourceDes: "",

          resourceIco: "el-icon-bell",

          resourceType: "2",

          parentId: "",

          appId: "4aab7a01a8304b7f8f1906073169a30f",

          resourceUrl: "/app/AppManagelication",

          resourceAttr: ""

        }

      ]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容