vue父组件调用子组件方法、父组件向子组件传值、子组件向父组件传值
一、父组件调用子组件方法
父组件代码 parent.vue
<template>
<div>
<button @click="parentFun">{{msg}}</button>
<child ref="child"></child>
</div>
</template> <script>
import child from './child'
export default {
name: 'parent',
data () {
return {
msg: '我是父组件按钮'
}
},
components: {
child,
},
methods:{
parentFun(){
this.$refs.child.childFun();
}
}
}
</script> <style scoped> </style>
子组件代码 child.vue
<template>
<div>
我是子组件
</div>
</template> <script>
export default {
name: 'child',
data () {
return {
msg: ''
}
},
methods:{
childFun(){
console.log('我是子组件方法')
},
}
}
</script> <style scoped> </style>
点击“我是父组件按钮” 会调用子组件 childFun() 方法
二、父组件向子组件传参
父组件代码 parent.vue
<template>
<div>
<child ref="child" :msg="msg"></child>
</div>
</template> <script>
import child from './child'
export default {
name: 'parent',
data () {
return {
msg: '我是父组件按钮参数'
}
},
components: {
child,
},
methods:{
}
}
</script> <style scoped> </style>
子组件代码 child.vue
<template>
<div>
我是子组件
</div>
</template> <script>
export default {
name: 'child',
props:{
msg:String
},
data () {
return {
}
},
methods:{
},
created(){
console.log(this.msg)
}
}
</script> <style scoped> </style>
把父组件要传的参数绑定到子组件的标签上,父组件用 props 接收参数,并注明参数类型,这样子组件就会获取到了
三、子组件向父组件传值
父组件代码 parent.vue
<template>
<div>
{{msg}}
<child @parentFun="getChildData" ></child>
</div>
</template> <script>
import child from './child'
export default {
name: 'parent',
data () {
return {
msg: ''
}
},
components: {
child,
},
methods:{
getChildData(data){
this.msg = data;
}
}
}
</script> <style scoped> </style>
子组件代码 child.vue
<template>
<div>
<button @click="sendParentMsg">我是子组件按钮</button>
</div>
</template> <script>
export default {
name: 'child',
data () {
return {
msg: '我是子组件的参数'
}
},
methods:{
sendParentMsg(){
//parentFun: 是父组件指定的传数据绑定的函数,this.msg:子组件给父组件传递的数据
this.$emit('parentFun',this.msg)
},
}
}
</script> <style scoped> </style>
好了,常用的几种父子组件之间的参数传递方法我整理了一些,希望对大家有所帮助
vue父组件调用子组件方法、父组件向子组件传值、子组件向父组件传值的更多相关文章
- vue中子组件调用父组件里面的数据和方法 父组件调用子组件的数据和方法
1.子组件直接调用父组件的数据和方法 在父组件father,vue <template> <div> <!-- 父组件里面的数据 --> <p>父组件里 ...
- vue 父组件调用子组件方法
情景: 父组件中引入上传附件的子组件:点击组件可以分别上传对应要求的图片,子组件内部循环可创建多个模块. 父组件传入数组子组件循环来创建不同的组件模块,所有事件都在子组件内部. 父组件页面的上方同时有 ...
- 关于Vue中,父组件获取子组件的数据(子组件调用父组件函数)的方法
1. 父组件调用子组件时,在调用处传给子组件一个方法 :on-update="updateData" 2. 子组件在props中,接收这个方法并声明 props: { onUp ...
- vue.js(19)--vue中子组件调用父组件的方法
子组件是不能直接使用父组件中的方法的,需要进行事件绑定(v-on:自定义方法名="父组件方法名"),然后在子组件中再定义一个方法,使用this.$emit('自定义方法名')语句完 ...
- js中子父页面数据传递与方法调用
A父页面 ,B为子页面 1.父页面调用子页面 A中调用B中方法:self.frames[iframeName].BFunction(); 注:iframeName:为父页面中iframe的name属性 ...
- 父页面 调用iframe方法
父页面调用Iframe的方法 document.getElementById("tabIf0").contentWindow.Search(); Jquery 方式: ...
- 【Android 应用开发】 自定义组件 宽高适配方法, 手势监听器操作组件, 回调接口维护策略, 绘制方法分析 -- 基于 WheelView 组件分析自定义组件
博客地址 : http://blog.csdn.net/shulianghan/article/details/41520569 代码下载 : -- GitHub : https://github.c ...
- 怎么在父窗口调用它页面的iframe里面数据,进行操作?
注:在服务器下操作有效果,本地无效 document.getElementById("taskdetail1").contentWindow.test(a) document.ge ...
- vue 子组件调用父组件的方法
vue中 父子组件的通信: 子组件通过 props: { //子组件中写的. childMsg: { //字段名 type: Array,//类型 default: [0,0,0] //这样可以指定默 ...
- Vue子组件调用父组件的方法
Vue子组件调用父组件的方法 Vue中子组件调用父组件的方法,这里有三种方法提供参考 第一种方法是直接在子组件中通过this.$parent.event来调用父组件的方法 父组件 <temp ...
随机推荐
- 在 Android 中如何调用 C 语言?
当我们的 Java 需要调用 C 语言的时候可以通过 JNI 的方式,Java Native Interface.Android 提供了对 JNI 的支持, 因此我们在 Android 中可以使用 J ...
- notepad++ 正则表达式(记录)
删除操作notepad++去掉行尾空格或逗号查找目标:\s+$ (或,+$)替换为空Note: 以换行符结尾表示是$\r\n,而不是\r\n$ notepad++删除文本文件里面的空白行查找目标:^[ ...
- PC端网页嵌入百度地图
1 打开百度地图生成器: http://api.map.baidu.com/lbsapi/creatmap/ 2 设置好了之后,点击获取代码,将代码粘贴到文件中保存为html文件 参考网址:https ...
- js脚本实现在该界面直接跳转到一个登录界面并且自动登录
1:首先说明的是自动登录也是需要密码的,这是前一个网页传输过去的 2:这里我使用的是post提交表单的形式 <------------------------------------------ ...
- 描述下什么是springcloud,springcloud中的组件有哪些?分别描述下它的原理?
1.什么是springcloud,springcloud中的组件有哪些? Spring cloud是一个基于Spring Boot实现的服务治理工具包,在微服务架构中用于管理和协调服务的微服务:就是把 ...
- shell脚本判断里面的字符含义
[ -s FILE ] 如果 FILE 存在且大小不为0则为真. [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c ...
- pip提示ModuleNotFoundError: No module named 'pkg_resources'
卸载setuptools后,pip下载python包一直提示ModuleNotFoundError: No module named 'pkg_resources',如下图: 在网上找了很多贴了都无法 ...
- 2031 HDOJ 进制转换
Problem Description 输入一个十进制数N,将它转换成R进制数输出. Input 输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=1 ...
- 升级tableau版本
下载地址: https://www.tableau.com/zh-cn/support/releases 2018以后的版本升级:https://help.tableau.com/current/se ...
- [转帖]56核Xeon Platinum 9200现身 - 英特尔有史以来最大的CPU封装
56核Xeon Platinum 9200现身 - 英特尔有史以来最大的CPU封装 https://www.cnbeta.com/articles/tech/835271.htm 当英特尔宣布上周正式 ...