vue平行组件传值
平行组件传值
-
通过平行组件传值可以实现任何情境下的传值,包括(父传子,子传父)
-
代码示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <div id="app"> <my-alex></my-alex> <hr> <my-mjj></my-mjj> </div> <script src="https://cdn.bootcss.com/vue/2.5.21/vue.js"></script> <script> // 借助一个空的VUE对象 实现组件之间通信 let bus = new Vue(); //子组件A let A = { template: ` <div> <h2>这是子组件: my-alex</h2> <p> my-mjj被选中的次数:{{ num }} </p> </div> `, data() { return { num: 0 } }, // 关键点 第二步 监听B组件触发了xuanwo A就加1 mounted() { //在文档准备就绪之后就要开始监听bus是否触发了xuanwo的事件 /* bus.$on("xuanwo",function(val){ // this.num += 1; console.log(val);// 点击B 可以跟着加1了 //关键点 第三步 怎么改A里面的num 的值 console.log(this); //bus对象 不是A }) */ bus.$on("xuanwo",(val)=>{ //把上面的匿名函数改成箭头函数 // this.num += 1; console.log(val); //点击B 可以跟着加1了 //关键点 第三步 怎么改A里面的num 的值 console.log(this); //A组件 this.num = val; }) } }; //子组件B let B = { template: ` <div> <h2>这是子组件: my-mjj</h2> <button v-on:click="add">选我</button> </div> `, data(){ return{ num:0 } }, methods:{ add(){ this.num += 1; // **** 关键点第一步 利用bus 对象抛出一个自定义事件 bus.$emit("xuanwo",this.num) } } }; //实例化根组件 let app = new Vue({ el: "#app", data: { totalNum: 0 }, components: { "my-alex": A, "my-mjj": B, } }) </script> </body> </html>
标签:
vue平行组件之间的传值
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类