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 相关文章推荐
JS页面延迟执行一些方法(整理)
Nov 11 Javascript
JQuery标签页效果实例详解
Dec 24 Javascript
基于iscroll.js实现下拉刷新和上拉加载效果
Nov 28 Javascript
Angular-Touch库用法示例
Dec 22 Javascript
Bootstrap免费字体和图标网站(值得收藏)
Mar 16 Javascript
Bootstrap模态框插件使用详解
May 11 Javascript
用jquery获取select标签中选中的option值及文本的示例
Jan 25 jQuery
vue2.0 实现页面导航提示引导的方法
Mar 13 Javascript
vue项目打包部署到服务器的方法示例
Aug 27 Javascript
JavaScript使用indexOf()实现数组去重的方法分析
Sep 04 Javascript
JavaScrip如果基于url实现图片下载
Jul 03 Javascript
Canvas三种动态画圆实现方法说明(小结)
Apr 16 Javascript
浅谈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
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
2011/03/28 PHP
PHP5中Cookie与 Session使用详解
2013/04/30 PHP
C# WinForm中实现快捷键自定义设置实例
2015/01/23 PHP
Yii中创建自己的Widget实例
2016/01/05 PHP
简述php环境搭建与配置
2016/12/05 PHP
JQuery CSS样式控制 学习笔记
2009/07/23 Javascript
location.href语句与火狐不兼容的问题
2010/07/04 Javascript
浅谈javascript的数据类型检测
2010/07/10 Javascript
基于Jquery实现表格动态分页实现代码
2011/06/21 Javascript
JavaScript正则表达式之multiline属性的应用
2015/06/16 Javascript
详解Vue-cli 创建的项目如何跨域请求
2017/05/18 Javascript
微信小程序登录换取token的教程
2018/05/31 Javascript
element vue Array数组和Map对象的添加与删除操作
2018/11/14 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
JS实现横向跑马灯效果代码
2020/04/20 Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
2020/08/03 Javascript
python matplotlib 注释文本箭头简单代码示例
2018/01/08 Python
Python 3.x 安装opencv+opencv_contrib的操作方法
2018/04/02 Python
python3之模块psutil系统性能信息使用
2018/05/30 Python
python实现机器学习之多元线性回归
2018/09/06 Python
python 监听salt job状态,并任务数据推送到redis中的方法
2019/01/14 Python
Flask框架学习笔记之表单基础介绍与表单提交方式
2019/08/12 Python
Java文件与类动手动脑实例详解
2019/11/10 Python
python selenium 执行完毕关闭chromedriver进程示例
2019/11/15 Python
python装饰器相当于函数的调用方式
2019/12/27 Python
在keras中model.fit_generator()和model.fit()的区别说明
2020/06/17 Python
详解matplotlib中pyplot和面向对象两种绘图模式之间的关系
2021/01/22 Python
CSS3教程(1):什么是CSS3
2009/04/02 HTML / CSS
HTML5 Canvas标签使用收录
2009/07/07 HTML / CSS
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
电子商务专业学生的学习自我评价
2013/10/27 职场文书
质量月活动策划方案
2014/03/10 职场文书
倡导文明标语
2014/06/16 职场文书
光荣之路观后感
2015/06/12 职场文书
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
2021/05/25 HTML / CSS