vue 组件 关闭时触发事件_学习 Vue 的组件自定义事件,子传父的能力【18】

69f516974e7dd6a09bf0ae6164414a8c.gif

学习要点:1.自定义事件    2..sync 修饰符

本节课我们来开始学习 Vue 的组件自定义事件,子传父的能力。

一.自定义事件

1. 之前学习过 v-on 后面可以接:click 等内置的事件,而组件可以自定义事件;

2. 而自定义事件,可以通过子组件给父组件传递信息的能力;

//下面代码为子组件 html-a 的自定义事件

template : `  
{{name}}
`,methods : { //通过子组件的 click 事件来执行这个方法 //其中 this.$emit 是内置 API,可参考手册 //$emit 表示触发当前实例事件,可附带参数 //参数一是自定义事件,不支持类似 props 驼峰写法 childClick(name) { this.$emit('child-event', name); }}

3. 由于事件名不存在大小写自动转换的问题,所以名称要完全匹配;

1850e99beaf97ec4e9f4bbbb75df5fc0.png

PS:可以测试使用多个子组件,让其中一个子组件更改父组件后,看其它子组件的变化;

0d4c3450c89fbc18ef3efbe4060a9894.png

二..sync 修饰符

1. 还记得之前强行更改父组件通过 props 传给子组件的计算程序么?

2. 我们强行更改 props 值,控制台报错,且父组件的 data 并没有改变;

3. 通过将 props 的值保存子组件属性,再通过.sync 修饰符更改父组件;

-a v-on:child-event="parentFn">-a>

//这里是父组件的方法

methods : {  parentFn(name) {    console.log('父组件得到子组件的信息!' + name);    this.message = name;  }}

PS:由于单向数据流的概念,让维护清晰;所以 vue2.0 时一度删除.sync 修饰符;虽然在 2.3.0+ 版本又引入回来,使用的时候还是要格外小心,避免混乱。

5bfee1aba6d0eec578993cc9cbd8435e.png

如果您觉得有用,记得在下方点赞、关注、留言,小编会定期奉上更多的惊喜哦,您的打赏支持才是小编继续努力的动力,么么哒。

每日分享在学习过程中总结的学习经验,学习笔记,笔试题,HTML,CSS,JavaScript,jQuery教程,Vue教程,PHP教程,TinkPHP教程等,望大家能以学习为目的,每天阅读一篇文章,了解身边的技术,陪有梦想的人一起成长!

eb8c253c6da922603d429f92bef899bc.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值