vue组件之间值传递四种方法汇总
1、父组件获取子组件的数据和方法 $refs
子组件:
<template>
<div class="header">
<h3>{{ zz }}</h3>
</div>
</template> <script>
export default {
name: 'cx',
data () {
return {
zz: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'
}
},
methods: {
zxx: function () {
alert('子组件方法zxx()')
}
}
}
</script>
<style scoped>
</style> 父组件:
<template>
<div>
<h1>{{ mm }}</h1>
<yyy ref="ry"></yyy>
</div>
</template> <script>
import yyy from './cx' export default {
name: 'cy',
data () {
return {
mm: 'YYYYYYYYYYYYYYYYYYYYYYYYYYYY'
}
},
mounted () {
alert(this.$refs.ry.zz)
this.$refs.ry.zxx('父组件赋值的值')
},
components: {
yyy: yyy
}
}
</script>
<style scoped>
</style> 2、子组件调父组件的数据 props
子组件:
<template>
<div class="header">
<h3>{{ zz }}</h3>
<h1>{{ msg }}</h1>
</div>
</template> <script>
export default {
name: 'cx',
data () {
return {
zz: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'
}
},
props: ['msg'],
methods: {
}
}
</script>
<style scoped>
</style>
父组件:
<template>
<div>
<h1>{{ mm }}</h1>
<yyy :msg = "fav"></yyy>
</div>
</template> <script>
import yyy from './cx' export default {
name: 'cy',
data () {
return {
mm: 'YYYYYYYYYYYYYYYYYYYYYYYYYYYY',
fav: '父组件的数据'
}
},
mounted () {
},
components: {
yyy: yyy
}
}
</script>
<style scoped>
</style>
3、子组件调用父组件的方法并传递数据 $emit
子组件:
<template>
<div class="header">
<h3>{{ zz }}</h3>
<button @click="cd">传递参数</button>
</div>
</template> <script>
export default {
name: 'cx',
data () {
return {
zz: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'
}
},
methods: {
cd: function (msg) {
this.$emit('zbt','子组件传递的参数')
}
}
}
</script>
<style scoped>
</style>
父组件:
<template>
<div>
<h1>{{ mm }}</h1>
<yyy type="button" @zbt = "bt">获取子组件传递的参数</yyy>
</div>
</template> <script>
import yyy from './cx' export default {
name: 'cy',
data () {
return {
mm: 'YYYYYYYYYYYYYYYYYYYYYYYYYYYY'
}
},
methods: {
bt: function (msg) {
alert(msg)
}
},
components: {
yyy: yyy
}
}
</script>
<style scoped>
</style> 4、兄弟组件互相传值 $emit $on 组件1
<template>
<div>
<h1>{{ mm }}</h1>
</div>
</template>
<script>
import Bus from '../bus.js'
export default {
name: 'cy',
data () {
return {
mm: 'YYYYYYYYYYYYYYYYYYYYYYYYYYYY'
}
},
mounted: function () {
Bus.$on('a',(xx) => {
alert('我是cy,获取到了cx的值:'+xx)
})
}
}
</script>
<style scoped>
</style>
组件2
<template>
<div class="header">
<h3>{{ zz }}</h3>
<!-- <el-button type="success" @click="bus">触发</el-button>-->
</div>
</template>
<script>
import Bus from '../bus.js'
export default {
name: 'cx',
data () {
return {
zz: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'
}
},
mounted: function () {
var xx = "cx的值";
Bus.$emit('a',xx)
}
}
</script>
<style scoped>
</style>
vue组件之间值传递四种方法汇总的更多相关文章
- JS去除数组中重复值的四种方法
JS去除数组中重复值的四种方法 1 /// <summary> o[this[i]] = ""; } } newArr.p ...
- JAVA中获取文件MD5值的四种方法
JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...
- Activity的跳转及返回值 的四种方法
Activity生命周期 从创建到销毁的生命周期: onCreate()→onStart()→onResume()→onPouse()→onStop()→onDestroy() 从起动到后台再到前台: ...
- vue组件之间通信的8种方式
对于vue来说,组件之间的消息传递是非常重要的,下面是我对组件之间消息传递的常用方式的总结. props和$emit(常用) $attrs和$listeners 中央事件总线(非父子组件间通信) v- ...
- vue 组件之间数据传递(七)
1.props:父组件 -->传值到子组件 app.vue是父组件 ,其它组件是子组件,把父组件值传递给子组件需要使用 =>props 在父组件(App.vue)定义一个属性(变量)sex ...
- Vue组件之间通信的三种方式
最近在看梁颠编著的<Vue.js实战>一书,感觉颇有收获,特此记录一些比价实用的技巧. 组件是MVVM框架的核心设计思想,将各功能点组件化更利于我们在项目中复用,这类似于我们服务端面向对象 ...
- html5 获取和设置data-*属性值的四种方法讲解
1.获取id的对象 2.需要获取的就是data-id 和 dtat-vice-id的值 一:getAttribute()方法 const getId = document.getElementById ...
- 13. VUE 组件之间数据传递
组件数据传递: 父组件向内传递属性---动态属性 子组件向外发布事件 solt 插槽传递模板---具名solt 1. 父组件向子组件传递数据 子组件在父组件的并作为标签引入,通过设置标签的属性传递数据 ...
- 交换A与B值的四种方法
在网上看到了这样一道面试题,"int A=5,int B=2,怎样交换A与B的值",或许这是一道简单到不能再简单的题,但能作为一道面试题,肯定有其独特之处 大多数人会通过定义第三个 ...
随机推荐
- 终极解决方案——sbt配置阿里镜像源,解决sbt下载慢,dump project structure from sbt耗时问题
#sbt下载慢的问题 默认情况下,sbt使用mvn2仓库下载依赖,如下载scalatest时,idea的sbtshell 显示如下url https://repo1.maven.org/maven2/ ...
- 装numpy 环境:python3.4+ windows7 +64位系统
机器学习实战python 因为图像处理的原因,初步学习机器学习,选用语言python,参考书籍<机器学习实战> 环境:python3.4+ windows7 +64位系统 首先,今天解决的 ...
- OpenCV-Python 绘图功能 | 七
目标 学习使用OpenCV绘制不同的几何形状 您将学习以下功能:cv.line(),cv.circle(),cv.rectangle(),cv.ellipse(),cv.putText()等. 代码 ...
- Jmeter接口测试之用户自定义变量(九)
在使用Jmeter做接口自动化测试中,经常会使用到公共的数据,那么就需要对这些公共的数据分离出来,不管是基于测试框架的思想,还是使用工具来进行做自动化测试,公共数据的分离首先是需要思考的.这里就以获取 ...
- python之字符编码与转码
说起python编码,真是句句心酸,今天终于是,终于梳理清楚了,下面我们就来一起揭开py编码的真相吧! 一,什么是编码? 其实基本概念很简单.我们都知道消息,那么消息就是人类所能理解的,简单易懂的存在 ...
- .Net Core2.2 使用 AutoMapper进行实体转换
一.遇到的问题 在. Core Api 的编写中,我们经常会对一些功能点进行新增编辑操作,同时我们有时也会进行查询,但是我们查询的表的数据与我们返回的数据相差甚大,这是我们有需要自己手动进行类型的转换 ...
- JavaScript中去除字符串空格的方法
语法 string.trim() 参数值 无 返回值 类型:string 描述:返回移除头尾空格的字符串 技术细节 JavaScript版本: ECMAScript 5 去除字符串左右两端的空格,在v ...
- 【动态规划】最佳加法表达式(百练oj4152)
总时间限制: 1000ms 内存限制: 65536kB 描述 给定n个1到9的数字,要求在数字之间摆放m个加号(加号两边必须有数字),使得所得到的加法表达式的值最小,并输出该值.例如,在1234中摆放 ...
- spring @EnableAspectJAutoProxy背后的那些事(spring AOP源码赏析)
在这个注解比较流行的年代里,当我们想要使用spring 的某些功能时只需要加上一行代码就可以了,比如: @EnableAspectJAutoProxy开启AOP, @EnableTransaction ...
- CSS3新增的选择器
1. 层次选择器 子元素选择器: 只选择子元素 父选择器 > 子选择器 后面紧相邻的兄弟元素: 选择器1 + 选择器2 后面所有的兄弟元素: 选择器1 ~ 选择器2 2.属性选择器 ...