首先父子组件传值:很简单
子组件改变父组件的方式一:

  adddata: function () {this.$emit('addnum:datanum', this.datanum)}

通过this.$emit 的方式传递给父组件,然后在父组件中写方法,改变值。
这里有一个问题就是加上 :datanum 子组件改变不了父组件值
去掉就可以改变

<children :datanum="datan" @addnum="addnumdata"></children>addnumdata: function () {this.datan += 1},

方式二 使用.sync 修饰符
首先在子页面同样使用this.$emit

  adddata: function () {this.$emit('update:datanum',this.num)}

注意update 要写对 : 后面是父组件传的值(要改的属性),和值
父组件中:

<child  :datanum.sync="datan"></child>

datan 就是要改变的父组件值

我自己觉得是.sync 可以理解为 “双向绑定”,父传子是单向数据流是绑定的,但是子传父需要一定的方式 this.$emit(‘update:***’ ,***)
:datanum.sync 其实也是向子组件传值的过程
个人理解,请大家指正
prop为对象数组时不曾尝试

父组件代码:

<template><div style="color: red"><button @click="add">点击</button>父页面---{{datan}}父页面---{{post.title}}父页面---{{post.num}}<div style="padding: 20px 0">-------------------------------------------------</div><children :datanum="datan" @addnum="addnumdata"></children><child  :datanum.sync="datan"></child></div>
</template><script>import children from './children'import child from './child'export default {name: "",data: function () {return {msg: 'This is a Vue project',post: {num: 0,title: 'My Journey with Vue'},datan: 1,}},create: function () {}, /*渲染前调用*/mounted: function () {}, /*渲染后调用*/components: {child,children},// 组件注册methods: {addnumdata: function () {this.datan += 1},add: function () {this.datan += 1},}  /*方法*/}
</script><style scoped></style>

子组件一:

<template><div><div><button @click="adddata()">点击</button>子页面--{{datanum}}子页面--{{datanum}}</div><div style="padding: 20px 0">-------------------------------------------------</div></div>
</template><script>export default {name: "",data: function () {return {msg: 'This is a Vue project'}},create: function () {}, /*渲染前调用*/props: {datanum: Number},mounted: function () {}, /*渲染后调用*/methods: {adddata: function () {this.$emit('addnum:datanum', this.datanum)}}  /*方法*/}
</script><style scoped></style>

子组件二:

<template><div><div><button @click="adddata()">点击</button>子页面--{{datanum}}子页面--{{datanum}}</div><div style="padding: 20px 0">-------------------------------------------------</div></div>
</template><script>export default {name: "",data: function () {return {msg: 'This is a Vue project',num:0}},create: function () {}, /*渲染前调用*/props: {datanum: Number},mounted: function () {}, /*渲染后调用*/methods: {adddata: function () {this.$emit('update:datanum',this.num)}}  /*方法*/}
</script><style scoped></style>

子组件改变父组件的两种方式相关推荐

  1. js操作元素:改变元素内容有两种方式: interText 和 innerHTML的区别, 常用的元素的属性操作, 仿电脑系统时间问好 ,表单元素的属性操作 ,案例:仿京东显示隐藏密码 ,样式属性操作

    文章目录 操作元素 改变元素内容有两种方式: interText 和 innerHTML的区别 常用的元素的属性操作 案例:仿电脑系统时间问好 表单元素的属性操作 案例:仿京东显示隐藏密码 样式属性操 ...

  2. vue子组件改变父组件的值

    1 在父组件的coment绑定事件 <template><div :class="classObj" class="app-wrapper"& ...

  3. react当中子组件改变父组件的状态

    子组件直接改变父组件传入的props值是不被允许的, 当需要在子组件当中改变父组件的某一个状态, 父组件传入一个改变状态的函数,然后在子组件当中调用函数即可 转载于:https://www.cnblo ...

  4. 二级指针在子函数中申请内存的两种方式

    二级指针:在主函数中申明变量,在子函数中分配内存,有两种方式返回二级指针.在这个过程只有深刻理解了C的函数调用模型,以及指针的内存模型,才能够掌握好. #pragma once #include &l ...

  5. 【vue报错】【子组件改变父组件数据】 Avoid mutating a prop directly since

    [vue报错] Avoid mutating a prop directly since the value will be overwritten whenever the parent compo ...

  6. LayUI upload上传组件上传文件的两种方式(手动上传、自动上传)

    1 手动上传 上传文件分为两步,第一步选择文件,第二步上传文件. HTML代码: <input type='button' id='selectFile' value='选择文件'> &l ...

  7. QT-在子控件上绘图的两种方式

    Qt 在控件上面绘图 label,pushbutton..... 1.构建一个新类来调用该控件的绘图函数,新类重写 paintEvent(QPaintEvent *) ▶构建: class DrawG ...

  8. vue 父链和子组件索引_vue子组件和父组件双向绑定的几种方案

    v-model案例 模仿v-model实现案例 我是一串要和内部名字联动的一串文字(父组件) 父组件改变值带动(父组件)点一下试试 .sync方案实现案例 这是父组件的东西.利用这个框改变值,看看有没 ...

  9. 【react】子组件向父组件传值

    相信已经接触react的同学们,对父子间传值已经不陌生了,但是相对来说,父组件向子组件传值很简单,直接在 子组件的标签上传过去,再从子组件的props上结构出来就ok了,但是很多同学还是理解不了如何由 ...

最新文章

  1. js实现下拉框三级级联
  2. 一篇文章搞懂fof好友推荐案例
  3. 开发者工具 Top 100 名单
  4. matlab获得帮助的途径,在MATLAB 中获得帮助的途径 ()。A、帮助浏览器B、help 命令C、lookfor 命令D、模糊查询...
  5. 整数的二进制表示中 1 的个数
  6. 什么类型网站不利于seo优化
  7. 树莓派安装OpenCV2教程 (详细教程)
  8. oppo(不root)手机查看万能钥匙破解的wifi密码实例
  9. 如何使用达梦数据库的数据库配置助手删除数据库实例
  10. 「 数学模型 」“使用SPSS软件线性回归分析”实例
  11. pcre c语言,pcre函数详细解析
  12. html入门、结构、标签、列表、表格
  13. 2017-12-12
  14. 无理数存在性的几何证明
  15. js简单交互动画,运动吧
  16. 关于MSELoss、BCELoss、CELoss损失函数求导的推导
  17. 既然有MySQL了,为什么还要有MongoDB?
  18. Python开源指南
  19. 7-14 电话聊天狂人 (25分)
  20. 打包aab_聚餐买单AA制已经过时了 AAB制、AABB制、BBK制,你选哪个?

热门文章

  1. 回到计算机桌面快捷键,win10系统如何使用返回桌面快捷键?快速返回到电脑桌面的方法...
  2. 50万VPN登录凭证遭泄露,中国占11.89%
  3. java导入excel数据_java使用POI批量导入excel数据的方法
  4. cocos creator接入微信登陆sdk android篇
  5. Webmin未经身份验证的远程代码执行-墨者学院
  6. php 制作的效果图,PS制作逼真的下雨效果图
  7. 压敏电阻选型,超详细的指南攻略
  8. Windows 7钉子户
  9. 微信小程序座位预约,微信小程序实现订座位,餐厅座位预约小程序毕设作品
  10. 一个屌丝程序员的青春(三七九)