vue2.0 子组件改变props值,并向父组件传值的方法


Posted in Javascript onMarch 01, 2018

为什么我们会有修改 prop 中数据的冲动呢?通常是这两种原因:

prop 作为初始值传入后,子组件想把它当作局部数据来用;

prop 作为初始值传入,由子组件处理成其它数据输出。

对这两种原因,正确的应对方式是:

定义一个局部变量,并用 prop 的值初始化它:

props: ['initialCounter'],
data: function () {
 return { counter: this.initialCounter }
}

定义一个计算属性,处理 prop 的值并返回。

props: ['size'],
computed: {
 normalizedSize: function () {
 return this.size.trim().toLowerCase()
 }
}

注意在 JavaScript 中对象和数组是引用类型,指向同一个内存空间,如果 prop

是一个对象或数组,在子组件内部改变它会影响父组件的状态。

我们知道,父组件是使用 props 传递数据给子组件,但子组件怎么跟父组件通信呢?这个时候 Vue 的自定义事件系统就派得上用场了。 https://cn.vuejs.org/v2/guide/components.html#自定义事件

在父组件中定义两个变量,动态绑定到子组件中

vue2.0 子组件改变props值,并向父组件传值的方法

vue2.0 子组件改变props值,并向父组件传值的方法

子组件:

vue2.0 子组件改变props值,并向父组件传值的方法

vue2.0 子组件改变props值,并向父组件传值的方法

vue2.0 子组件改变props值,并向父组件传值的方法

父组件:定义两个方法,并绑定到子组件自定义事件上

vue2.0 子组件改变props值,并向父组件传值的方法

vue2.0 子组件改变props值,并向父组件传值的方法

以上这篇vue2.0 子组件改变props值,并向父组件传值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
有一段有意思的代码-javascript现实多行信息
Aug 26 Javascript
js获得当前时区夏令时发生和终止的时间代码
Feb 23 Javascript
JS基于构造函数实现的菜单滑动显隐效果【测试可用】
Jun 21 Javascript
防止页面url缓存中ajax中post请求的处理方法
Oct 10 Javascript
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
Oct 13 jQuery
详解AngularJS 过滤器的使用
Jun 02 Javascript
js数组去重的N种方法(小结)
Jun 07 Javascript
让axios发送表单请求形式的键值对post数据的实例
Aug 11 Javascript
使用 Element UI Table 的 slot-scope方法
Oct 10 Javascript
微信小程序pinker组件使用实现自动相减日期
May 07 Javascript
js实现表单项的全选、反选及删除操作示例
Jun 05 Javascript
解决vue-router的beforeRouteUpdate不能触发
Apr 14 Vue.js
浅谈vue单一组件下动态修改数据时的全部重渲染
Mar 01 #Javascript
vue 虚拟dom的patch源码分析
Mar 01 #Javascript
基于cropper.js封装vue实现在线图片裁剪组件功能
Mar 01 #Javascript
详解vue-cli 快速搭建单页应用之遇到的问题及解决办法
Mar 01 #Javascript
React Native 图片查看组件的方法
Mar 01 #Javascript
vue-cli结合Element-ui基于cropper.js封装vue实现图片裁剪组件功能
Mar 01 #Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
Mar 01 #Javascript
You might like
ajax+php打造进度条代码[readyState各状态说明]
2010/04/12 PHP
PHP 冒泡排序算法的实现代码
2010/08/08 PHP
php中实现可以返回多个值的函数实例
2015/03/21 PHP
thinkphp3.2点击刷新生成验证码
2016/02/16 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
PHP使用两个栈实现队列功能的方法
2018/01/15 PHP
IE6/7/8中Option元素未设value时Select将获取空字符串
2011/04/07 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
在css加载完毕后自动判断页面是否加入css或js文件
2014/09/10 Javascript
jquery删除指定子元素代码实例
2015/01/13 Javascript
JS中完美兼容各大浏览器的scrolltop方法
2015/04/17 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
基于Bootstrap实现Material Design风格表单插件 附源码下载
2016/04/18 Javascript
第八篇Bootstrap下拉菜单实例代码
2016/06/21 Javascript
AngularJS过滤器filter用法总结
2016/12/13 Javascript
vue-cli监听组件加载完成的方法
2018/09/07 Javascript
Vue的H5页面唤起支付宝支付功能
2019/04/18 Javascript
vue实现绑定事件的方法实例代码详解
2019/06/20 Javascript
利用Angular7开发一个Radio组件的全过程
2019/07/11 Javascript
es6中比较有用的7个技巧小结
2019/07/12 Javascript
[01:04:01]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第一场
2014/05/24 DOTA
[03:07]完美世界DOTA2联赛PWL DAY10 决赛集锦
2020/11/11 DOTA
python实现简单的TCP代理服务器
2014/10/08 Python
Python字符串和文件操作常用函数分析
2015/04/08 Python
遍历python字典几种方法总结(推荐)
2016/09/11 Python
Python爬虫抓取代理IP并检验可用性的实例
2018/05/07 Python
python、Matlab求定积分的实现
2019/11/20 Python
在Python中实现函数重载的示例代码
2019/12/12 Python
Django serializer优化类视图的实现示例
2020/07/16 Python
Django配置跨域并开发测试接口
2020/11/04 Python
python uuid生成唯一id或str的最简单案例
2021/01/13 Python
css3 实现滚动条美化效果的实例代码
2021/01/06 HTML / CSS
荷兰男士时尚网上商店:Suitable
2017/12/25 全球购物
投资建议书模板
2014/05/12 职场文书
品酒会策划方案
2014/05/26 职场文书
MySQL脏读,幻读和不可重复读
2022/05/11 MySQL