「Vue」父子组件之间的传值及调用方法
a.父组件向子组件传值
data(){},props数据区别
data中的数据可读可写,是自己的数据
props是个数组,中的数据是父组件传递过来的,只读不能写
<login :dmsg='msg'></login> 父组件向自定义的子组件中传值
var myvue = new Vue({
el:"#myvue",
data:{
flag:'reg',
msg:'这是父组件'
},
methods:{
},
components:{
login:{
template:'<h2>这是子组件---{{dmsg}}</h2>',
props:['dmsg'] 子组件定义父组件的传值
data(){
return {
smsg:'这是子组件的自有值'
}
}
}
}
})
b.子组件调用父组件方法并向父组件传值
<div id="myvue">
<login :dmsg='msg' @dshow='show'></login> @dshow='show'是父组件方法传递
</div>
<script>
var myvue = new Vue({
el:"#myvue",
data:{
flag:'reg',
msg:'这是父组件',
dmsg:null,
},
methods:{
show(data){
this.dmsg = data
}
},
components:{
login:{
template:'<div><h2>这是子组件---{{dmsg}}---{{smsg}}</h2><input type="button" name="" id="" value="大按钮" @click="myshow"/></div>',
props:['dmsg'],
methods:{
myshow(){
this.$emit('dshow',this.smsg) $emit是触发的意思,触发传递过来的方法并传递数据给父方法赋值
},
},
data(){
return {
smsg:'这是子组件的自有值'
}
}
}
}
})
</script>
ref 调用DOM组件和自定义组件,及自定义组件的值和方法,可以实现父组件调用子组件方法
<div id="myvue">
<h3 ref='myref'>今天天气真好</h3>
<input type="button" name="" id="" value="获取元素" @click="show"/>
<login ref='refh2'></login>
</div>
<template id="tmp">
<h2>今天天气不好</h2>
</template>
var myvue = new Vue({
el:"#myvue",
data:{
},
methods:{
show:function(){
this.$refs.refh2.sshow()
}
},
components:{
login:{
template:'#tmp',
methods:{
sshow(){console.log('子组件方法')}
},
data(){
return {msg:'哈哈哈'}
}
}
}
})
「Vue」父子组件之间的传值及调用方法的更多相关文章
- vue中父子组件之间的传值、非父子组件之间的传值
在Vue实例中每个组件之间都是相互独立的,都有自己的作用域,所以组件之间是不能直接获取数据.在项目开发中一个组件可能需要获取另一个组件的值,我们可以通过其他方法间接的获取.所以,获取的方法有以下几种: ...
- vue 非父子组件之间的传值(Bus/总线/发布订阅模式/观察者模式)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Vue非父子组件之间的传值
1.新建一个js文件 然后引入vue 实例化vue 最后暴露这个实例:实例化Vue对象的时候名称要小写,大写控制台报错,我也不知道什么原因: 2.在要广播的地方引入刚才定义的实例: 3通过VueEm ...
- vue项目中的父子组件之间的传值。
首先说一下父子组件就是在一个vue文件中引入另一个vue文件,被引入vue文件就是子组件,引入vue文件的vue文件就是父组件.而在父组件中是不能直接调用子组件中的变量值的.下面详细说一下,父子组件之 ...
- 【Vue课堂】Vue.js 父子组件之间通信的十种方式
这篇文章介绍了Vue.js 父子组件之间通信的十种方式,不管是初学者还是已经在用 Vue 的开发者都会有所收获.无可否认,现在无论大厂还是小厂都已经用上了 Vue.js 框架,简单易上手不说,教程详尽 ...
- 浅谈vue父子组件之间的传值
前言:本章主要说下父子组件的传值,为商品列表组件之间的传值做一个基础预热.Github:https://github.com/Ewall1106/mall(请选择分支chapter23) 1.父组件向 ...
- vue 学习五 深入了解components(父子组件之间的传值)
上一章记录了 如何在父组件中向子组件传值,但在实际应用中,往往子组件也要向父组件中传递数据,那么此时我们应该怎么办呢 1.在父组件内使用v-on监听子组件事件,并在子组件中使用$emit传递数据 // ...
- VUE 父子组件之间通信传值 props和 $emit
1.父组件传值给子组件 $props,子组件传值给父组件 $emit 父组件 <div id="app" > <tr ...
- vue之父子组件之间的通信方式
(一)props与$emit <!-这部分是一个关于父子组件之间参数传递的例子--> <!--父组件传递参数到子组件是props,子组件传递参数到父组件是用事件触发$emit--&g ...
随机推荐
- 问题解决:IDEA右键选择new新文件的时候没有JSP文件选项解决
参考: https://blog.csdn.net/tomorrow_fine/article/details/74090308 用上面的方法就可以解决了, 但是如果把web目录设置成了额外的,那id ...
- 微信小程序之分享或转发功能(自定义button样式)
小程序页面内发起转发 通过给 button 组件设置属性open-type="share",可以在用户点击按钮后触发 Page.onShareAppMessage 事件,如果当前页 ...
- effective c++ 笔记 (35-40)
//---------------------------15/04/24---------------------------- //#35 考虑virtual函数以外的其他选择 { /* 1: ...
- CentOS 6.8 安装Maven
1.下载maven安装包到developer文件目录下 2,解压缩maven,命令: -bin.tar.gz 3.配置maven路径到环境变量中 export JAVA_HOME=/usr/java/ ...
- python 游戏(井字棋)
1. 游戏思路和流程图 实现功能,现实生活中的井字棋玩法 游戏流程图 2. 使用模块和游戏提示 import random def game_info(): print('欢迎来到井字棋游戏') pr ...
- BugPhobia开发篇章:Beta阶段第III次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第三次Scrum Meeting 敏捷开发起始时间 2015/12/15 00:00 A.M. 敏捷开发终止时间 2015/12/15 23 ...
- PAT 甲级 1030 Travel Plan
https://pintia.cn/problem-sets/994805342720868352/problems/994805464397627392 A traveler's map gives ...
- ejabberd在windows10上安装记录
安装完ejabberd:ejabberd-17.11-windows-installer.exe 启动报错:bash ejabberdctl register "admin" &q ...
- Spring transaction与EJB transaction的关系
TransactionDefinition Interface that defines Spring-compliant transaction properties. Based on the p ...
- Redis 总结精讲
本文围绕以下几点进行阐述 1.为什么使用redis2.使用redis有什么缺点3.单线程的redis为什么这么快4.redis的数据类型,以及每种数据类型的使用场景5.redis的过期策略以及内存淘汰 ...