vue组件间的数据传递
父组件向子组件传递数据
在 Vue 中,可以使用 props 向子组件传递数据。
在子组件部分:

如果需要从父组件获取 logo 的值,就需要使用 props: ['logo']
在父组件部分

在调用组件的时候,使用 v-bind 将 logo 的值绑定为 App.vue 中定义的变量 logoMsg
然后就能将App.vue中 logoMsg 的值传给 header.vue 了
子组件向父组件传递数据
子组件主要通过事件传递数据给父组件
在子组件:
<template>
<div class="home">
<div class="name">
<label>
<span>请输入:</span>
<input v-model="username" @change="setUser" />
</label>
</div>
</div>
</template>
//当<input>的值发生变化的时候,将 username 传递给 App.vue,
首先声明一个了方法 setUser,用 change 事件来调用 setUser
<script> export default {
name: "name",
data() {
return {
username: ''
};
},
methods: {
setUser: function() {
this.$emit('transferUser',this.username)
}
}
}
</script>
//在 setUser 中,使用了 $emit 来遍历 transferUser 事件,并返回 this.username
其中 transferUser 是一个自定义的事件,功能类似于一个中转,this.username 将通过这个事件传递给父组件
父组件部分
<template>
<!-- 组件 -->
<!-- <router-view></router-view> -->
<div id="app">
<div>
<p>名字为:{{user}}</p>
<NameDiv @transferUser="getUser"></NameDiv>
</div>
</div>
</template>
//在父组件 App.vue 中,声明了一个方法 getUser,
用 transferUser 事件调用 getUser 方法,获取到从子组件传递过来的参数 username <script>
// 导入组件
import HelloWord from "./components/HelloWorld.vue";
import NameDiv from "./views/Home";
export default {
name: "app",
data() {
return {
user: "",
};
},
methods: {
getUser(msg) {
this.user = msg;
}
},
//注册组件
components: {
NameDiv
}
};
//getUser 方法中的参数 msg 就是从子组件传递过来的参数 username
</script>
<style>
</style>
结果如图:
子组件与子组件间数据传递
状态管理工具vuex
vue组件间的数据传递的更多相关文章
- Vue组件注册与数据传递
父子组件创建流程 1.构建父子组件 1.1 全局注册 (1)构建注册子组件 //构建子组件child var child = Vue.extend({ template: '<div>这是 ...
- vue 组件之间的数据传递
父组件传数据给子组件 创建数据 获取json数据 子组件传数据给父组件 1. 子组件使用$emit监听数据 getAreaValues(){ this.$emit('getAreaValues', { ...
- vue组件间的数据和方法传递
方法 1.父组件调用子组件:ref(在子组件中加上ref即可通过this.$refs.ref.method调用) 2.子组件调用父组件:emit(this.$emit(调用的方法名,传递的参数)) 数 ...
- vue 组件间数据传递
父组件向子组件传值 方法一: 子组件想要使用父组件的数据,需要通过子组件的 props 选项来获得父组件传过来的数据. 1.父组件parent.vue中代码: <template> < ...
- vue2.0 组件之间的数据传递
组件间的数据传递// 父组件<template><div class="order"><dialog-addpro v-on:closedialog= ...
- Vue组件间的参数传递
1.父组件与子组件传值 父组件传给子组件:子组件通过props方法接受数据: 子组件传给父组件: $emit 方法传递参数 2.非父子组件间的数据传递,兄弟组件传值 eventBus,就是创建一个事件 ...
- 浅谈Vue不同场景下组件间的数据交流
浅谈Vue不同场景下组件间的数据“交流” Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...
- 【Vue】浅谈Vue不同场景下组件间的数据交流
浅谈Vue不同场景下组件间的数据“交流” Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...
- Vue 爬坑之路(二)—— 组件之间的数据传递
Vue 的组件作用域都是孤立的,不允许在子组件的模板内直接引用父组件的数据.必须使用特定的方法才能实现组件之间的数据传递. 首先用 vue-cli 创建一个项目,其中 App.vue 是父组件,com ...
随机推荐
- java8 数据集过滤removeIf和filter
对象如下,需求:只要30岁以下的人 //求职者的实体类 public class Person { private String name;//姓名 private Integer age;//年龄 ...
- IDEA子项目的相互依赖
A项目依赖B项目 一.B项目打包,执行install 这一步其实就是把你的项目打包到本地仓库,你可以在本地仓库看到相应的jar包 二.在A项目的pom.xml引入依赖可以了 当B项目修改后,需要重新打 ...
- Flutter Form正确使用方法【可正确获取提交的表单数据】
import 'package:flutter/material.dart'; void main() => runApp(new HomePage()); class HomePage ext ...
- SAP RFC和BAPI
RFC和BAPI都是SAP提供的接口技术.RFC全称Remote Function Call,就是允许远程调用的函数模块. BAPI则是基于RFC的新技术,全称Business Application ...
- mssqlserver修改表名,列名,添加表列,删除表列,修改表列类型
mssqlserver修改表名,列名,添加表列,删除表列,修改表列类型 ,代码肯定省事的呀 --添加表列 alter table test ) null; --删除表列 alter table tes ...
- 关于css清除元素浮动的方法总结(overflow clear floatfix)
在前两天的一个面试中考官问我web中清除浮动的一些css常用方法,我很轻松的答出了: 1.overflow:hidden 2.clear:both 3.floatfix类 然后问题就来了,考官接着问' ...
- android基础---->Parcelable的使用
android中Parcelable序列化的使用,简单的记录一下. 目录导航: Serializable在android中的使用 Parcelable在android中的使用 Serializabl ...
- Java IO把一个文件中的内容以字符串的形式读出来
代码记录(备查): /** * 把一个文件中的内容以字符串的形式读出来 * * @author zhipengs * */ public class FileToString { public sta ...
- [数据库]简单SQL语句总结
1.在查询结果中显示列名:a.用as关键字:select name as '姓名' from students order by ageb.直接表示:select name '姓名' from ...
- Hive行列转换
Hive行列转换 1.行转列 (根据主键,进行多行合并一列) 使用函数:concat_ws(‘,’,collect_set(column)) collect_list 不去重 collect_s ...