vue3组件递归调用?

使用Vue如何开发树形组件

递归组件Vue官方文档是这样说的:组件在它的模板内可以递归地调用自己。

在官网这句话就是关键定义组件是一定要有name属性。

环境:vue 3; webpack;插件:z-tree,jquery(cnpm install xxxx)问题;由于数据量比较多,需要动态加载数据,默认第一次请求的数据是最高一级,然后子集都是空。

在 GitHub 上也没有找到合适的组件,因此基于 VueX 自己写了一个 JSON 树组件,主要原理是利用 Vue 的递归组件,进行深度优先的先序遍历。

最近在做一个vue的项目,独立封装树形组件。先说一下项目需求:项目原型:此树形结构分为三级:根节点,一级节点,二级节点,每个节点都可以选中或取消选中,父级节点选中,下级的所有节点也可全部选中。

vue如何多次调用调用自身组件,只是数据不一样

发现是循环调用组件时,组件比vue实例后创建,官方文档里写组件必须先于实例化引入,所以说组件没有正确的引入。解决方式解决的方式就是全局引入组件,并且在vue实例化前。具体到我们项目中,就是在main.js里引入。

允许组件模板递归地调用自身。注意,组件在全局用 Vue.component() 注册时,全局 ID 自动作为组件的 name。指定 name 选项的另一个好处是便于调试。有名字的组件有更友好的警告信息。

全局注册后,任何V ue 实例都可以使用。

这里会导致一个 BUG,如果一个页面有多个 x-select 组件,并且 options 长度不一样,会导致长的 options 的组件后面几个选项渲染不出来。究其原因是 Vue 会帮我们缓存模板编译结果。

递归组件组件在它的模板内可以递归地调用自己, 只要给组件设置name 的选项就可以了。

一:如果是父子关系的话,我们可以使用下面的办法 二:如果结构比较复杂,或者不能确定 children 的下标。

vue组件递归——级联菜单的实现

递归组件组件在它的模板内可以递归地调用自己,只有当它有 name 选项时才可以。 在官网这句话就是关键定义组件是一定要有name属性。

在下拉菜单里选择设备类型,根据类型来展示对应的设备名称。监听类型下拉框的值,根据类型去设备表里查对应的设备名称。后端返回list后再展示在下拉框里。

index属性可以用菜单对象中的任意属性代替只需要它是唯一的 从后台获取不同角色的不同菜单数据,再通过两个递归函数来渲染菜单和动态添加菜单路由,实现页面的权限配置。

级联菜单实现的方法有很多,本文根据笔者所做的一个小实验,简单的介绍一下如何通过XML来实现级联菜单的功能。

vue---tree实现递归组件(多级下拉菜单)

1、递归组件组件在它的模板内可以递归地调用自己,只有当它有 name 选项时才可以。 在官网这句话就是关键定义组件是一定要有name属性。

2、首先我们手里是一份这样的 JSON 数据:这是最重要的环节,组件的递归实现了级联菜单的多级联动,这个过程就如同实现对象的深复制一样。

3、递归组件Vue官方文档是这样说的:组件在它的模板内可以递归地调用自己。

4、很明显,要传入一个option对象,而option的$el属性是一个dom,则表现形式就是一个Vue的实例,我这边直接用querySelector获取一个dom, 传入{ $el: dom }也能用。

5、这次给大家带来怎样使用vue.js与element-ui实现菜单树形结构,使用vue.js与element-ui实现菜单树形结构的注意事项有哪些,下面就是实战案例,一起来看一下。

实战项目中如何使用vue组件

组件用法组件需要注册后才可以使用,注册有全局注册和局部注册两种方式。1 全局注册后,任何V ue 实例都可以使用。

Vue组件的定义方法不是只有我们之前写的建立.vue文件那一种,比如你还可以通过Vue.component()的方法来创建,不过这些都以后吧,我们这里就只说明.vue文件这一种(不喜欢一下子说太多,而且仔细想想,不就是API吗)。

同理,由于操作数据是由父组件发起的,所父组件中也需要有同样的属性,并且和 TableBox 中的 reloadData 保持数据同步,这里用到了 Vue 3 版本增加的一个 .sync 修饰符进行处理 。

当使用vue-cli初始化一个项目的时候,会发现src/components文件夹下有一个HelloWorld.vue文件,这便是单文件组件的基本开发模式。

最开始的项目开发中,我们如果使用第三方的库我们会直接在项目中直接使用 script 元素标签引入即可。

在很多 vue项目中,我们使用 vue.component 来定义全局组件,紧接着用 new vue(el: ”)在每个页面内指定一个容器元素这种方式在很多中小规模的项目中运作的很好,在这些项目里 JavaScript 只被用来加强特定的视图。

vue3组件递归调用?  第1张

在Vue.js中通过递归组件如何构建树形菜单

1、递归组件组件在它的模板内可以递归地调用自己,只有当它有 name 选项时才可以。 在官网这句话就是关键定义组件是一定要有name属性。

2、递归组件Vue官方文档是这样说的:组件在它的模板内可以递归地调用自己。

3、首先我们手里是一份这样的 JSON 数据:这是最重要的环节,组件的递归实现了级联菜单的多级联动,这个过程就如同实现对象的深复制一样。

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的前端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23 14:21
下一篇 2023-09-23 14:21

相关推荐

发表回复

登录后才能评论