父传子
利用props传值,子组件中规定props数据类型,然后父组件使用子组件时需要绑定数据在子组件上:
父组件
| <template> |
| <div class="parents-div"> |
| |
| <Children :msg='msg'/> |
| </div> |
| </template> |
| |
| <script> |
| import Children from './Children.vue' |
| export default { |
| components:{Children}, |
| data(){ |
| return{ |
| msg:"test", |
| } |
| }, |
| } |
| </script> |
| <style scoped> |
| .parents-div{} |
| </style> |
子组件
| <template> |
| <div class="children-div"> |
| |
| {{msg}} |
| </div> |
| </template> |
| |
| <script> |
| export default { |
| props:{ |
| msg:String, |
| }, |
| components:{}, |
| } |
| </script> |
| <style scoped> |
| .children-div{} |
| </style> |
子传父
利用$emit传值,父组件监听自定义事件,在子组件中通过触发该事件来传值:
子组件
| <template> |
| <div class="children-div"></div> |
| </template> |
| |
| <script> |
| export default { |
| components: {}, |
| data() { |
| return { |
| msg: "test", |
| }; |
| }, |
| mounted() { |
| this.getMsg(); |
| }, |
| methods: { |
| getMsg() { |
| this.$emit("get-msg", this.msg); |
| }, |
| }, |
| }; |
| </script> |
| <style scoped> |
| .children-div { |
| } |
| </style> |
父组件
| <template> |
| <div class="parents-div"> |
| |
| <Children @get-msg="getMsg" /> |
| </div> |
| </template> |
| |
| <script> |
| import Children from "./Children.vue"; |
| export default { |
| components: { Children }, |
| methods: { |
| |
| getMsg(msg) { |
| console.log(msg); |
| }, |
| }, |
| }; |
| </script> |
| <style scoped> |
| .parents-div { |
| } |
| </style> |
vuex传值
vuex相当于一个公共仓库,保存着所有组件都能共用的数据,需要时可以直接使用,不需要考虑组件间是否有引用与被引用的父子关系,具体使用点击这里。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律