大家在写vue项目的时候会遇到给组件的各种命名,接下来通过本文给大家分享vue组件name的作用小结,感兴趣的朋友一起看看吧
我们在写vue项目的时候会遇到给组件命名
这里的name非必选项,看起来好像没啥用处,但是实际上这里用处还挺多的
export default { name:'xxx'}
登录后复制
1.当项目使用keep-alive时,可搭配组件name进行缓存过滤
立即学习“前端免费学习笔记(深入)”;
举个例子:
我们有个组件命名为detail,其中dom加载完毕后我们在钩子函数mounted中进行数据加载
export default { name:'Detail'},mounted(){ this.getInfo();},methods:{ getInfo(){ axios.get('/xx/detail.json',{ params:{ id:this.$route.params.id } }).then(this.getInfoSucc) } }
登录后复制
因为我们在App.vue中使用了keep-alive导致我们第二次进入的时候页面不会重新请求,即触发mounted函数。
有两个解决方案,一个增加activated()函数,每次进入新页面的时候再获取一次数据。
还有个方案就是在keep-alive中增加一个过滤,如下图所示:
登录后复制
2.DOM做递归组件时
比如说detail.vue组件里有个list.vue子组件,递归迭代时需要调用自身name
list.vue:
{{item.title}}
export default { name:'DetailList',//递归组件是指组件自身调用自身 props:{ list:Array }}
登录后复制
list数据:
const list = [{ "title": "A", "children": [{ "title": "A-A", "children": [{ "title": "A-A-A" }] },{ "title": "A-B" }] }, { "title": "B" }, { "title": "C" }, { "title": "D" }]
登录后复制
迭代的结果如下:
3.当你用vue-tools时
vue-devtools调试工具里显示的组见名称是由vue中组件name决定的
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
vue单个组件实现无限层级多选菜单功能的介绍
vue单个组件实现无限层级多选菜单功能的介绍
以上就是vue组件name的介绍的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2747244.html