Vue学习使用系列六【自定义事件子传父的方法实现】
1:code
1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 <title>Document</title> 8 <script src="../assets/vue.js"></script> 9 </head> 10 11 <body> 12 <div id="app"> 13 <div> 14 <p>父组件是使用 props 传递数据给子组件,但如果子组件要把数据传递回去,就需要使用自定义事件!</p> 15 <p>我们可以使用 v-on 绑定自定义事件, 每个 Vue 实例都实现了事件接口(Events interface),即:</p> 16 <p>使用 $on(eventName) 监听事件</p> 17 <p>使用 $emit(eventName) 触发事件</p> 18 <p>另外,父组件可以在使用子组件的地方直接用 v-on 来监听子组件触发的事件。</p> 19 <p>以下实例中子组件已经和它外部完全解耦了。它所做的只是触发一个父组件关心的内部事件。</p> 20 </div> 21 <hr> 22 <p>父组件的Total值:{{total}} 需要加上 v-on:</p> 23 <childtoparant v-on:add_number="addparant_upnumber"></childtoparant> 24 </div> 25 <script> 26 Vue.component("childtoparant", { 27 template: `<button v-on:click="addupnumber">{{count}}</button>`, //click子组件自己的事件 28 data: function() { 29 return { 30 count: 0 31 } 32 }, 33 methods: { 34 addupnumber: function() { 35 this.count += 1; 36 this.$emit('add_number'); //定义一个事件的名称,方便触发 37 } 38 } 39 }) 40 new Vue({ 41 el: "#app", 42 data: { 43 total: 0 44 }, 45 methods: { 46 addparant_upnumber: function() { 47 this.total += 1; 48 } 49 } 50 }) 51 </script> 52 </body> 53 54 </html>
2:测试效果
如有疑问或者错误的地方,请跟帖,本人会第一时间答复以及相互学习,谢谢!个人会不断的上传自己的学习心得!
好了今天就先到这里,下次有时间再更新,如果存在不合理的地方,欢迎大家多多指教留言!!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具