vue.js_09_vue-父子组件的传值方法
1.父向子传递数据
1>定义一个父组件和一个子组件
2>父组件通过v-bind绑定传递的数据 :parentmsg="msg"
3>子组件需要通过 props:['']来接收数据 props: ['parentmsg'],
<body>
<div id="app">
<comp1 :parentmsg="msg"></comp1>
</div> <template id="tmpl1">
<div>
<h1>这是子元素--{{parentmsg}}</h1>
</div>
</template>
<script>
var comp1 = {
template: '#tmpl1',
props: ['parentmsg'],
}
var vm = new Vue({
el: '#app',
data: {
msg: '我是父组件中的数据',
},
components: {
comp1
}
})
</script>
</body>
2.子向父传递数据
1>子组件通过一个触发一个事件来调用向父组件传递数据的方法 @click="sendMsg"
2>通过 this.$emit('func',this.msg) 传递数据给父组件 来调用父组件上绑定的方法 @func="getMsgFromSon"
3>通过方法拿到子组件传递过来的数据
methods: {
getMsgFromSon(data){
this.msgSon=data
}
},
<body>
<div id="app">
<comp1 :parentmsg="msg" @func="getMsgFromSon"></comp1>
<h1>{{msgSon}}</h1>
</div> <template id="tmpl1">
<div>
<h1>这是子元素</h1>
<input type="button" value="向父组件传递消息" @click="sendMsg"/>
</div>
</template>
<script>
var comp1 = {
template: '#tmpl1',
props:['parentmsg'],
data(){
return{
msg:'我是子组件中的数据'
}
},
methods:{
sendMsg(){
this.$emit('func',this.msg)
}
}
}
var vm = new Vue({
el: '#app',
data: {
msg:'我是父组件中的数据',
msgSon:''
},
methods: {
getMsgFromSon(data){
this.msgSon=data
}
},
components: {
comp1
}
})
</script>
</body>
vue.js_09_vue-父子组件的传值方法的更多相关文章
- vue中非父子组件的传值bus的使用
非父子之间的组件传值,可以使用vuex.简单的状态管理,也可以用vue bus vue bus可以实现不同组件间.不同页面间的通信,比如我在A页面出发点击事件,要B页面发生变化,使用方法如下: 全局定 ...
- Vue.js父子组件如何传值 通俗易懂
父子组件传值原理图 一般页面的视图App.vue应为这样 一.父组件向子组件传值 1.创建子组件,在src/components/文件夹下新建一个Child.vue 2.Child.vue的中创建pr ...
- 关于Vue中父子组件相互传值
Header为子组件,Home为父组件,通过子组件调用父组件 运行结果如下 下面是父组件调用子组件的案例 通过button按钮的click事件 图一是父组件Home中的run方法,图二是msg和fun ...
- Vue父子组件相互传值及调用方法的方案
Vue父子组件相互传值及调用方法的方案 一.调用方法: 1.父组件调用子组件方法: 2.子组件调用父组件方法: 参考:https://www.cnblogs.com/jin-zhe/p/9523782 ...
- vue父子组件的传值总结
久违的博客园我又回来了.此篇文章写得是vue父子组件的传值,虽然网上已经有很多了.写此文章的目的就是记录下个人学习的一部分.接下来我们就进入主题吧! 在开发vue项目中,父子组件的传值是避免不掉的. ...
- vue+elementUI项目,父组件向子组件传值,子组件向父组件传值,父子组件互相传值。
vue+elementUI项目,父组件向子组件传值,子组件向父组件传值,父子组件互相传值. vue 父组件与子组件相互通信 一.父组件给子组件传值 props 实现父组件向子组件传值. 1父组件里: ...
- vue中父子组件之间的传值、非父子组件之间的传值
在Vue实例中每个组件之间都是相互独立的,都有自己的作用域,所以组件之间是不能直接获取数据.在项目开发中一个组件可能需要获取另一个组件的值,我们可以通过其他方法间接的获取.所以,获取的方法有以下几种: ...
- Vue中非父子组件传值的问题
父子组件传值的问题,前面已经讲过,不再叙述,这里来说一种非父子组件的传值. vue官网指出,可以使用一个空vue实例作为事件中央线! 也就是说 非父子组件之间的通信,必须要有公共的实例(可以是空的), ...
- vue.js单文件组件中非父子组件的传值
最近在研究vue.js,总体来说还算可以,但是在web开发群里有一些人问在单文件组件开发模式中非父子组件如何传值的问题,今天在这里讲讲,希望对大家有所帮助! 在官网api中的这段讲解很少,也很模糊:官 ...
随机推荐
- golang的时区转换
一.代码 package main import ( "fmt" "time" ) const TIME_LAYOUT = "2006-01-02 1 ...
- 在select标签中添加a标签
<!--第一个选项不能写连接--> <select id="" onchange="window.location=this.value"&g ...
- fatal error U1087: cannot have : and :: dependents for same target Stop.
转自VC错误:http://www.vcerror.com/?p=72 问题描述: 完成后编译,发现有错误 D:\WinDDK\7600.16385.1\bin\makefile.new(7117) ...
- 如何解决:修改.gitignore后,不生效
1.git rm -r --cached . 删除缓存 2.git add . 添加要提交的文件 3.git commit -m "update .gitignore" 提交 ...
- selenium基础(多表单切换、多窗口切换)
一.多表单的切换 frame:HTML页面中的一中框架,主要作用是在当前页面中指定区域显示另一页面元素: (HTML语言中,frame/iframe标签为表单框架) 在web ...
- mysql初次使用
- visual studio 注释模板
/*----------------------------------------------------------------* 项目名称 :$rootnamespace$* 项目描述 :* 类 ...
- eclipse中启动tomcat之后,项目一直重复部署导致内存报警!!!
项目环境:jdk1.8+tomcat8.0; 出现该问题的原因:目前还没有确定,网友有很多的说法. 但是我在部署其中一个项目时出现此情况,在同样的环境下部署另外一个项目未出现此情况. 其中的一种解决方 ...
- mysql主从跳过错误
mysql主从复制,经常会遇到错误而导致slave端复制中断,这个时候一般就需要人工干预,跳过错误才能继续 跳过错误有两种方式: 1.跳过指定数量的事务 mysql>stop slave; m ...
- F. Cowmpany Cowmpensation dp+拉格朗日插值
题意:一个数,每个节点取值是1-d,父亲比儿子节点值要大,求方案数 题解:\(dp[u][x]=\prod_{v}\sum_{i=1}^xdp[v][i]\),v是u的子节点,先预处理出前3000项, ...