父组件向子组件传递数据通过props,子组件引入到父组件中,设置一个值等于父组件的数据,通过:bind将数据传到子组件中,子组件中通过props接收父组件的数据,这样就可以使用父组件的数据了,循环组件中的对象或数组,:key="item.index",这样是防止报警告;

子组件通过发射事件$emit();发射事件,父组件监听子组件发射的事件,通过事件监听,定义方法接受子组件传递的相关数据,子组件在发射事件的时候可以传递相关的数据,父组件监听的函数可以接收数据;

父组件向子组件传值,是通过属性的方式传值,vue单向数据流,子组件使用父组件的数据,但是不能修改父组件传个子组件的内容,否则会影响其他子组件对父组件的数据引用,因此vue是单向数据流是这么考虑的

父组件代码如下:

<template>
<div id="app">
<input type="text" v-model="inputValue" />
<button @click="handleBtn">提交</button >
<Hello :content="item" :index="index" :key="item.index" v-for="(item ,index) in list"
//监听子组件发射的delete事件,并且绑定handleDelete方法 @delete="handleDelete"></Hello>
    <router-view/>
</div>
</template>
<script>
//子组件引入
import Hello from './components/HelloWorld'
export default {
name: 'App',
components:{
Hello
},
data(){
return {
list:[],
inputValue:'', }
},
methods:{
handleBtn(){
this.list.push(this.inputValue);
this.inputValue = '';
},
//接收子组件传递的数据
handleDelete(index){ this.list.splice(index,1)
}
}
}
</script>
子组件代码
<template>
<div class="hello"> <ul>
<li @click="handleClick" >{{content}}</li>
<li></li>
</ul>
</div>
</template>
<script>
export default {
props:['content','index'],
data () { return {
}
},
methods:{
handleClick(){
//发射事件delete,发射props中的index(这里是list的数组索引)
this.$emit('delete',this.index);
}
}
} </script>
 

vue 父向子组件传递数据,子组件向父组件传递数据方式的更多相关文章

  1. vue 父组件中的数据如何传递给子组件

    父组件:<template> <div id="app"> <img src="./assets/logo.png"> &l ...

  2. vue父组件如何向子组件中传递数据?

    原文地址 props传参 父组件: <template> <parent> <child :list="list"></child> ...

  3. vue父组件异步获取动态数据传递给子组件获取不到值

    原理: 在父组件中使用axios获取异步数据传给子组件,但是发现子组件在渲染的时候并没有数据,在created里面打印也是空的,结果发现一开始子组件绑定的数据是空的,在请求数据没有返回数据时,子组件就 ...

  4. Vue把父组件的方法传递给子组件调用(评论列表例子)

    Vue把父组件的方法传递给子组件调用(评论列表例子) 效果展示: 相关Html: <!DOCTYPE html> <html lang="en"> < ...

  5. vue之provide和inject跨组件传递属性值失败(父组件向子组件传值的两种方式)

    简单介绍:当一个子组件需要用到父组件的父组件的某些参数.那么这个时候为了避免组件重复传参,使用vue的依赖注入是个不错的方法,直接在最外层组件设置一个provide,内部不管多少嵌套都可以直接取到最外 ...

  6. Vue2.x中的父组件数据传递至子组件

    父组件结构 template <template> <div> <v-girl-group :girls="aGirls"></v-gir ...

  7. vue 父组件主动获取子组件的数据和方法 子组件主动获取父组件的数据和方法

    Header.vue <template> <div> <h2>我是头部组件</h2> <button @click="getParen ...

  8. Vue父组件主动获取子组件的数据和方法

    Vue父组件主动获取子组件的数据和方法 https://www.jianshu.com/p/bf88fc809131

  9. vue 高级属性父组件provide向子组件发送数据,子组件通过inject接收数据

    以前父组件向子组件中传值是通过props传值,子组件不能更改父组件中的值,但是可以通过从父组件中获取的值定义给自己的data值,这里父组件可以通过provide向子组件传递自己组件中的data值,子组 ...

  10. vue父组件中获取子组件中的数据

    <FormItem label="上传头像" prop="image"> <uploadImg :width="150" ...

随机推荐

  1. 'ascii' codec can't decode byte 0xd6 in position 0

    使用elastalert,执行python文件时报错: 经查,python命令下输出中文字符时需要将编码指定为gb2312,一开始博主也不知道是输出在控制台的信息编码格式问题,一直以为是博主自己的ya ...

  2. [Unity插件]Lua行为树(一):BehaviorDesigner源码分析

    BehaviorDesigner是Unity上的一款行为树插件,不过这个插件是用C#编写的,编写出来的行为树也是依赖于C#的,不利于热更,所以有必要写一个lua版本的. 首先下载BehaviorDes ...

  3. 500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list

    出错原因:用户没有变更根目录的权限. ftp用户默认的根目录是/home/ftp,如果要切换登陆目录,需要给予权限 解决方法: 第一步, 打开/etc/vsftpd/vsftpd.conf,做如下配置 ...

  4. Ubuntu 14.04 配置OpenCv 2.4.9

      安装工具 g++ 链接:http://www.cnblogs.com/LQLin168/p/6844593.html 下载OpenCv 2.4.9(官网地址):http://opencv.org/ ...

  5. 调整navigationItem的位置

    UIBarButtonItem *itemTransformView = [[UIBarButtonItem alloc] initWithCustomView:_header.transformVi ...

  6. 37.scrapy解决翻页及采集杭州造价网站材料数据

    1.目标采集地址: http://183.129.219.195:8081/bs/hzzjb/web/list 2.这里的翻页还是较为简单的,只要模拟post请求发送data包含关键参数就能获取下一页 ...

  7. hive 动态分区实现 (hive-1.1.0)

    笔者使用的hive版本是hive-1.1.0 hive-1.1.0动态分区的默认实现是只有map没有reduce,通过执行计划就可以看出来.(执行计划如下) insert overwrite tabl ...

  8. 用JQuery实现简单的菜单隐藏于切换

    <锋利的JQuery>第一个demo<!DOCTYPE html> <html> <head> <meta charset="UTF-8 ...

  9. 4. easyui删除功能实例

    ############实例1############## function delPerson(id) { $.messager.defaults = { ok : "确定", ...

  10. Swoole 结合TP5创建http服务

    下载TP5框架,在项目根目录下创建server目录 http_service.php <?php //创建服务 $http = new swoole_http_server("0.0. ...