Vue 组件传值几种常用方法【总结】
程序员文章站
2022-06-20 23:37:39
使用vue也有很多年了,一直都没有整理一下相关知识,给大家总结下开发过程中所遇到的一些坑,主要给大家总结一下vue组件传值的几种常用方法:
1、通过路由带参数传值
&n...
使用vue也有很多年了,一直都没有整理一下相关知识,给大家总结下开发过程中所遇到的一些坑,主要给大家总结一下vue组件传值的几种常用方法:
1、通过路由带参数传值
① a组件通过query把id传给b组件
this.$router.push({path:'/b',query:{id:1}})
② b组件接收
this.$route.query.id
2、父组件向子组件传值
使用props向子组件传递数据
子组件部分:child.vue
<template> <div> <ul> <li v-for='(item,index) in namelist' :key='index'>{{item.name}}</li> </ul> </div> </template> <script> export default { props:['namelist'] } </script>
父组件部分:
<template> <div> <div>这是父组件</div> <child :name-list='names'></child> </div> </template> <script> import child from './child.vue' export default { components:{ child }, data(){ return{ names:[ {name:'柯南'}, {name:'小兰'}, {name:'工藤新一'} ] } } } </script>
3、子组件向父组件传值
子组件主要通过事件向父组件传递数据:
子组件部分:
<template> <div> <ul> <li v-for='(item,index) in namelist' :key='index'>{{item.name}}</li> </ul> <button @click='toparent'>点击我</button> </div> </template> <script> export default { props:['namelist'], methods:{ toparent(){ this.$emit('emitdata',123) } } } </script>
父组件部分:
<template> <div> <div>这是父组件</div> <child :name-list='names' @emitdata='getdata'></child> </div> </template> <script> import child from './child.vue' export default { components:{ child }, data(){ return{ names:[ {name:'柯南'}, {name:'小兰'}, {name:'工藤新一'} ] } }, methods:{ getdata(data){ console.log(data); //123 } } } </script>
总结
以上所述是小编给大家介绍的vue 组件传值几种常用方法【总结】,希望对大家有所帮助
上一篇: Django之图书管理系统