我是靠谱客的博主 健壮小霸王,最近开发中收集的这篇文章主要介绍vue 中子组件或者公共组件向上一级传递数据 $emit的使用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在子组件或者公共组件中,定义一个方法例如

<li @click="selectItem(item)" v-for="item in group.items" class="list-group-item">

  然后在methods中使用

selectItem(item){
this.$emit('select',item);
}

$emit中的两个参数的含义是,一个是传递给父组件的方法,一个是传递给父组件方法的参数。

也就是说,父组件通过使用子组件通过$emit传递的方法select及其参数,来得到传递的数据。

并且,父组件直接使用的select方法其实就是自定义方法的用法,触发这种自定义方法就是子组件触发传递$emit的方法,也就是click。

 <ListView @select='selectSinger' :data="singers"></ListView>

此处select既是子组件通过$emit传递的自定义方法

selectSinger则是父组件接收select所带的参数的方法

selectSinger(singer) {
this.$router.push({
path:`/singer/${singer.id}`
})
}

参数singer既是子组件$emit所传递的item参数。

 

若是有用并觉得不错,可以赞一个哟

转载于:https://www.cnblogs.com/zhoujx1066/p/7102716.html

最后

以上就是健壮小霸王为你收集整理的vue 中子组件或者公共组件向上一级传递数据 $emit的使用的全部内容,希望文章能够帮你解决vue 中子组件或者公共组件向上一级传递数据 $emit的使用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部