父组件向子组件传递数据

在 Vue 中,可以使用 props 向子组件传递数据。

 
App.vue
HelloWorld.vue

在子组件部分:

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

在父组件部分

在调用组件的时候,使用 v-bind 将 logo 的值绑定为 App.vue 中定义的变量 logoMsg

然后就能将App.vue中 logoMsg 的值传给 header.vue 了

子组件向父组件传递数据

 
Hom.vue
App.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组件间的数据传递的更多相关文章

  1. Vue组件注册与数据传递

    父子组件创建流程 1.构建父子组件 1.1 全局注册 (1)构建注册子组件 //构建子组件child var child = Vue.extend({ template: '<div>这是 ...

  2. vue 组件之间的数据传递

    父组件传数据给子组件 创建数据 获取json数据 子组件传数据给父组件 1. 子组件使用$emit监听数据 getAreaValues(){ this.$emit('getAreaValues', { ...

  3. vue组件间的数据和方法传递

    方法 1.父组件调用子组件:ref(在子组件中加上ref即可通过this.$refs.ref.method调用) 2.子组件调用父组件:emit(this.$emit(调用的方法名,传递的参数)) 数 ...

  4. vue 组件间数据传递

    父组件向子组件传值 方法一: 子组件想要使用父组件的数据,需要通过子组件的 props 选项来获得父组件传过来的数据. 1.父组件parent.vue中代码: <template> < ...

  5. vue2.0 组件之间的数据传递

    组件间的数据传递// 父组件<template><div class="order"><dialog-addpro v-on:closedialog= ...

  6. Vue组件间的参数传递

    1.父组件与子组件传值 父组件传给子组件:子组件通过props方法接受数据: 子组件传给父组件: $emit 方法传递参数 2.非父子组件间的数据传递,兄弟组件传值 eventBus,就是创建一个事件 ...

  7. 浅谈Vue不同场景下组件间的数据交流

    浅谈Vue不同场景下组件间的数据“交流”   Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...

  8. 【Vue】浅谈Vue不同场景下组件间的数据交流

    浅谈Vue不同场景下组件间的数据“交流”   Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...

  9. Vue 爬坑之路(二)—— 组件之间的数据传递

    Vue 的组件作用域都是孤立的,不允许在子组件的模板内直接引用父组件的数据.必须使用特定的方法才能实现组件之间的数据传递. 首先用 vue-cli 创建一个项目,其中 App.vue 是父组件,com ...

随机推荐

  1. Flutter 中的常见的按钮组件 以及自定义按钮组件

    Flutter 里有很多的 Button 组件很多,常见的按钮组件有:RaisedButton.FlatButton. IconButton.OutlineButton.ButtonBar.Float ...

  2. 阿里重磅开源在线分析诊断工具Arthas(阿尔萨斯)

    github地址: Arthas English version goes here. Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱. 当你遇到以下类似问题而束手无策时,Art ...

  3. 查看Oracle中是否有锁表

    转: 查看Oracle中是否有锁表 2018-04-23 17:59 alapha 阅读(19450) 评论(0) 编辑 收藏 一.用dba用户登录,或者将用户赋权为DBA用户 命令: su - or ...

  4. test20190904

  5. sql 获取某一时段中每一天中最大的时间的一条记录

    SELECT *FROM ( SELECT ROW_NUMBER() OVER( PARTITION BY CONVERT(CHAR(10), DataTime, 120) ORDER BY Data ...

  6. spring 使用XML配置开发Spring AOP

      XML方式开发AOP与注解开发原理是相同的,所以这里主要介绍一些用法即可.这里需要在XML中引入AOP的命名空间,所以先来了解一下AOP可配置的元素 代码清单:切面类 package com.ss ...

  7. Flink 物理分区

    本文来自官网: https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/stream/operators/#physical-p ...

  8. 汉字转拼音插件:LM-PinYin.js

    CDN:http://dtdxrk.github.io/jsPlug/pinyin/LM-PinYin.js demo演示地址:http://dtdxrk.github.io/jsPlug/pinyi ...

  9. Linux下,postgreSQL的查看与重启

    查看命令:ps aux | grep postgresnetstat -npl | grep postgres 方法1: #su - postgres $pg_ctl restart 方法2: #su ...

  10. 【嵌入式硬件Esp32】(1)例程Hello World Example 注释

    /* Hello World Example This example code is in the Public Domain (or CC0 licensed, at your option.) ...