作者QQ:1095737364    QQ群:123300273     欢迎加入!

1.添加子组件

  1.父组件修改

  1. <template>
  2. <!-- v-for 表情表示循环输出数据:必须要有父类dom,否则会出错的-->
  3. <div>
  4. <div v-for="item in pageDate">
  5. <span v-text="item.id"></span>
  6. <span v-text="item.url"></span>
  7. <span v-text="item.href"></span>
  8. <button @click="detele()"> 删除数据</button>
  9. </div>
  10. <button @click="add"> 添加数据</button>
  11. <button @click="update"> 修改数据</button>
  12. <child></child>
  13. </div>
  14. </template>
  15. <script>
  16. var pageDate = [
  17. {
  18. id: 10000, //该广告的ID
  19. url: 'http://163.com', //广告图片路径
  20. href: 'http://baidu.com'//点击跳转连接
  21. },
  22. {
  23. id: 10002, //该广告的ID
  24. url: 'http://163.com', //广告图片路径
  25. href: 'http://baidu.com'//点击跳转连接
  26. }
  27. ]
  28. import child from "../home/children/456"
  29. export default {
  30. data () {
  31. return {
  32. pageDate
  33. }
  34. },
  35. props: {},
  36. computed: {},
  37. components: {child},
  38. methods: {
  39. add: function () {
  40. this.pageDate.push({
  41. id: 10003, //该广告的ID
  42. url: 'http://163.com', //广告图片路径
  43. href: 'http://baidu.com'//点击跳转连接
  44. })
  45. },
  46. update: function () {
  47. this.pageDate[1].id = 10000000000000000000
  48. },
  49. detele: function (index) {
  50. this.pageDate.splice(index, 1)
  51. }
  52. },
  53. watch: {},
  54. }
  55. </script>
  56.  
  57. <style scoped>
  58.  
  59. </style>

  2.在此目录下新建child文件夹,在child文件夹下建立456.vue文件

  1. <template>
  2. <div class="child_vue">
  3. <p >这是孩子vue</p>
  4. </div>
  5. </template>
  6. <script>
  7. export default {
  8. data () {
  9. return {}
  10. },
  11. props: {},
  12. computed: {},
  13. components: {},
  14. methods: {},
  15. watch: {},
  16. }
  17. </script>
  18. <style scoped>
  19. </style>

2.父类组件给子类组件传递参数

  1.修改template的代码:

    <child :data="childDate"></child>

  2.修改孩子组件456.vue的template代码:

  1. <template>
  2. <div class="child_vue">
  3. <p >这是孩子vue</p>
  4. <span v-text="data.id"></span>
  5. <span v-text="data.url"></span>
  6. <span v-text="data.href"></span>
  7. </div>
  8. </template>v

  3.修改孩子组件456.vue的props代码:

    props: ['data']
  注意. 父类的 :data 和子组件的 props: ['data'] 名字要保持一致,父类增删改子类数据和修改自己的数据是一样使用的

3.子类组件给父类组件传递参数

  1.子类组件:

  1. <template>
  2. <div class="child_vue">
  3. <p >这是孩子vue</p>
  4. <span v-text="data.id"></span>
  5. <span v-text="data.url"></span>
  6. <span v-text="data.href"></span>
  7. <input v-model="username" @change="setUser">
  8. </div>
  9. </template>
  10. <script>
  11. var message =
  12. {
  13. username:' '
  14. }
  15. export default {
  16. data () {
  17. return {message}
  18. },
  19. props: ['data'],
  20. computed: {},
  21. components: {},
  22. methods: {
  23. setUser:function () {
  24. this.$emit('getChildData',this.username)
  25. }
  26. },
  27. watch: {},
  28. }
  29. </script>
  30. <style scoped>
  31. </style>

  2.父类组件

  1. <template>
  2. <!-- v-for 表情表示循环输出数据:必须要有父类dom,否则会出错的-->
  3. <div>
  4. <div v-for="item in pageDate">
  5. <span v-text="item.id"></span>
  6. <span v-text="item.url"></span>
  7. <span v-text="item.href"></span>
  8. <button @click="detele()"> 删除数据</button>
  9. </div>
  10. <button @click="add"> 添加数据</button>
  11. <button @click="update"> 修改数据</button>
  12. <child :data="childDate" @getChildData="getUser"></child>
  13. <p>{{user}}</p>
  14. </div>
  15. </template>
  16. <script>
  17. var pageDate = [
  18. {
  19. id: 10000, //该广告的ID
  20. url: 'http://163.com', //广告图片路径
  21. href: 'http://baidu.com'//点击跳转连接
  22. },
  23. {
  24. id: 10002, //该广告的ID
  25. url: 'http://163.com', //广告图片路径
  26. href: 'http://baidu.com'//点击跳转连接
  27. }
  28. ]
  29. var childDate =
  30. {
  31. id: 10002, //该广告的ID
  32. url: 'http://163.com', //广告图片路径
  33. href: 'http://baidu.com'//点击跳转连接
  34. }
  35.  
  36. import child from "../home/children/456"
  37. export default {
  38. data () {
  39. return {
  40. pageDate,childDate,user:""
  41. }
  42. },
  43. props:{},
  44. computed: {},
  45. components: {child},
  46. methods: {
  47. add: function () {
  48. this.pageDate.push({
  49. id: 10003, //该广告的ID
  50. url: 'http://163.com', //广告图片路径
  51. href: 'http://baidu.com'//点击跳转连接
  52. })
  53. },
  54. update: function () {
  55. this.childDate.id = 10000000000000000000
  56. },
  57. detele: function (index) {
  58. this.pageDate.splice(index, 1)
  59. },
  60. getUser:function (child_username) {
  61. this.user=child_username
  62. }
  63. },
  64. watch: {},
  65. }
  66. </script>
  67.  
  68. <style scoped>
  69.  
  70. </style>

vue 子组件和父组件的更多相关文章

  1. vue 子组件调用父组件的方法

    vue中 父子组件的通信: 子组件通过 props: { //子组件中写的. childMsg: { //字段名 type: Array,//类型 default: [0,0,0] //这样可以指定默 ...

  2. Vue 组件&组件之间的通信 之 子组件向父组件传值

    子组件向父组件传值:子组件通过$.emit()方法以事件形式向父组件发送消息传值: 使用步骤: 定义组件:现有自定义组件com-a.com-b,com-a是com-b的父组件: 准备获取数据:父组件c ...

  3. vue+elementUI项目,父组件向子组件传值,子组件向父组件传值,父子组件互相传值。

    vue+elementUI项目,父组件向子组件传值,子组件向父组件传值,父子组件互相传值. vue 父组件与子组件相互通信 一.父组件给子组件传值 props 实现父组件向子组件传值. 1父组件里: ...

  4. 【转】Vue组件一-父组件传值给子组件

    Vue组件一-父组件传值给子组件 开始 Vue组件是学习Vue框架最比较难的部分,而这部分难点我认为可以分为三个部分学习,即 组件的传值 - 父组件向子组件中传值 事件回馈 - 子组件向父组件发送消息 ...

  5. Vue子组件调用父组件的方法

    Vue子组件调用父组件的方法   Vue中子组件调用父组件的方法,这里有三种方法提供参考 第一种方法是直接在子组件中通过this.$parent.event来调用父组件的方法 父组件 <temp ...

  6. vue 父向子组件传递数据,子组件向父组件传递数据方式

    父组件向子组件传递数据通过props,子组件引入到父组件中,设置一个值等于父组件的数据,通过:bind将数据传到子组件中,子组件中通过props接收父组件的数据,这样就可以使用父组件的数据了,循环组件 ...

  7. Vue 子组件调用父组件 $emit

    <!DOCTYPE html><html>    <head>        <meta charset="utf-8">      ...

  8. Vue 编程之路(三)—— Vue 中子组件在父组件的 v-for 循环里,父组件如何调取子组件的事件

    (标题的解决方案在第二部分) 最近公司的一个项目中使用 Vue 2.0 + element UI 实现一个后台管理系统的前端部分,属于商城类型. 一.前期思路: 其中在“所有订单”页面,UI 给的设计 ...

  9. vue 子组件调用父组件的函数

    子组件调用父组件的函数,使用$emit(eventName,[...args]),触发当前实例上的事件.附加参数都会传给监听器回调. 子组件 <template> <div> ...

  10. vue系列(一)子组件和父组件

    父组件传递数据到子组件props 父组件 <template> <div class="main"> <div class="top&quo ...

随机推荐

  1. 设计模式《JAVA与模式》之责任链模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述责任链(Chain of Responsibility)模式的: 责任链模式是一种对象的行为模式.在责任链模式里,很多对象由每一个对象对其 ...

  2. C#递归方法遍历目录及子目录

    众所周知,获得某一目录下第一级的所有文件和文件夹列表,很容易办到:DirectoryInfo di=new DirectoryInfo(strBaseDir);//strBaseDir是起始目录,绝对 ...

  3. odoo开发笔记-tree列表视图拖拽排序

    odoo列表tree视图 拖拽排序 实现效果: 实现方式: 模型中定义字段: class CusYourModel(models.Model): """ 你的模型 &qu ...

  4. 字符串编码C#

    给定一个字符串,请你将字符串重新编码,将连续的字符替换成“连续出现的个数+字符”.比如字符串AAAABCCDAA会被编码成4A1B2C1D2A. 输入描述: 每个测试输入包含1个测试用例 每个测试用例 ...

  5. gitlab基本的命令

    1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加远程仓库:$ git  ...

  6. 理解 async/await 的执行

    这是一篇简单的短文章,方便理解. 开局先丢官宣:sec-async-function-definitions 这个链接是对 await 的解释,解释了它的执行. await 的执行意味着(官宣巴拉巴拉 ...

  7. Spring mvc 4系列教程(三)—— Spring4.X的新特性

    1.Spring4.0的新特性 从2004年Spring的1.0发布后,后面又发布了很多重要的版本:Spring2.0提供了XML命令空间和AspectJ的支持:Spring2.5提出了注解驱动(an ...

  8. linux和docker的capabilities介绍

    验证环境:centos7 x86/64 内核版本4.19.9 在linux 2.2版本之前,当内核对进程进行权限验证的时候,可以将进程划分为两类:privileged(UID=0)和unprivile ...

  9. 轻量级web富文本框——wangEditor使用手册(2)——扩展一个“缩进”功能 demo

    最新版wangEditor: 配置说明:http://www.wangeditor.com/doc.html demo演示:http://www.wangeditor.com/wangEditor/d ...

  10. psql工具使用(二)

    所有psql命令都以   \   开头 一.使用psql -l查看有哪些数据库: -bash-4.2$ psql -l List of databases Name | Owner | Encodin ...