Vue父子传递实例讲解


Posted in Javascript onFebruary 14, 2020

实现功能:

1、子组件的input输入,改变父组件信息

2、父组件对子组件1,3进行监听与控制

3、子组件1与子组件3相互关联

父子双向通信流程:

子组件的input通过事件监听->控制子组件的data中变量/向父组件$emit子事件及变量

父组件监听到$emit事件及变量,赋予父组件的变量,通过props传到子组件

<body>
<div id = "app">
 <!-- //将父组件num1的数据传给props中的pnumber1,实现父传子
 //监听子组件num1change事件,这里recdnum1函数,没明白加括号出错 -->
<cnp 
 :pnumber1 = "num1"
 :pnumber3 = "num3"
 @num1change = "recdnum1"
 @num3change="recdnum3" >
</cnp>
</div> 

<!-- //template 编写自己的模版 -->
<template id = "mytemp">
 <div>
  <h3>props:{{pnumber1}}</h3>
  <h3>child-data:{{dnumber1}}</h3>
  <h3></h3>
  <input type="text" :value="dnumber1" @input="num1input">
  <h3>props:{{pnumber3}}</h3>
  <h3>child-data:{{dnumber3}}</h3>
  <input type="text" :value="dnumber3" @input="num3input">  
 </div>
</template>

<script>
var app = new Vue({
 el:"#app",
 data(){
  return{
   //父组件数据库中的默认数值
   num1:11,
   num3:31,
  }
 },
 methods:{
  //监听事件中,将子组件传来的dnumber1传给num1,num1传给pnumber1
  recdnum1(value){
   //默认传递来的value为String,根据需要转为Int或Float
   this.num1 = parseInt(value);
   },
  recdnum3(value){
   this.num3=parseFloat(value);
   }   
 },
 components: {
  cnp:{
   template:"#mytemp",
   props: {
    pnumber1:{
     //默认props的数据格式和默认值
     type:Number,
     default:1
    },
    pnumber3:{
     type:Number,
     default:3
    }        
   },
   data(){
    return{
     //将props的数值赋予data中变量
     dnumber1:this.pnumber1,
     dnumber3:this.pnumber3
    }
   },
   methods: {
    num1input(event){
     //将input中的数值传给dnumber1
     this.dnumber1 = event.target.value;
     //向父组件发射事件num1change,并传出dnumber1数据
     this.$emit("num1change",this.dnumber1);
     //绑定pnumber3数值的关联性
     this.dnumber3=this.dnumber1*5;
     //向父组件发射pnumber3信息
     this.$emit("num3change",this.dnumber3);
    },
    num3input(event){
     this.dnumber3 = event.target.value;
     this.$emit("num3change",this.dnumber3)
    },
   }
  }
 }
});
</script>
</body>

以上就是相关的实例代码,希望三水点靠木整理的内容能够帮助到大家。

Javascript 相关文章推荐
IE 下的只读 innerHTML
Aug 21 Javascript
Javascript将string类型转换int类型
Dec 09 Javascript
JQuery触发radio或checkbox的change事件
Dec 18 Javascript
jquery操作复选框checkbox的方法汇总
Feb 05 Javascript
详解JavaScript中return的用法
May 08 Javascript
jQuery 循环遍历改变a标签的href(实例讲解)
Jul 12 jQuery
Angular.js初始化之ng-app的自动绑定与手动绑定详解
Jul 31 Javascript
EasyUI Tree树组件无限循环的解决方法
Sep 27 Javascript
javascript中new Array()和var arr=[]用法区别
Dec 01 Javascript
webpack+vuex+axios 跨域请求数据的示例代码
Mar 06 Javascript
vue计算属性+vue中class与style绑定(推荐)
Mar 30 Javascript
JavaScript+HTML实现学生信息管理系统
Apr 20 Javascript
Javascript操作select控件代码实例
Feb 14 #Javascript
微信小程序复选框实现多选一功能过程解析
Feb 14 #Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
Feb 14 #Javascript
node事件循环和process模块实例分析
Feb 14 #Javascript
vue+springboot图片上传和显示的示例代码
Feb 14 #Javascript
JavaScript简单编程实例学习
Feb 14 #Javascript
JS实现打砖块游戏
Feb 14 #Javascript
You might like
php多文件上传功能实现原理及代码
2013/04/18 PHP
php 模拟POST提交的2种方法详解
2013/06/17 PHP
PHP类继承 extends使用介绍
2014/01/14 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
JSQL SQLProxy 的 php 版本代码
2010/05/05 Javascript
jquery渐隐渐显的图片幻灯闪烁切换实现方法
2015/02/26 Javascript
javascript中eval函数用法分析
2015/04/25 Javascript
js一维数组、多维数组和对象的混合使用方法
2016/04/03 Javascript
Markdown+Bootstrap图片自适应属性详解
2016/05/21 Javascript
node-http-proxy修改响应结果实例代码
2016/06/06 Javascript
深入浅析JS的数组遍历方法(推荐)
2016/06/15 Javascript
详解Next.js页面渲染的优化方案
2019/01/27 Javascript
微信小程序如何获取用户头像和昵称
2019/09/23 Javascript
解决Layui当中的导航条动态添加后渲染失败的问题
2019/09/25 Javascript
使用vue cli4.x搭建vue项目的过程详解
2020/05/08 Javascript
vue实现导航菜单和编辑文本的示例代码
2020/07/04 Javascript
jQuery 实现DOM元素拖拽交换位置的实例代码
2020/07/14 jQuery
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
Python MySQLdb模块连接操作mysql数据库实例
2015/04/08 Python
Python中用于转换字母为小写的lower()方法使用简介
2015/05/19 Python
在Django的session中使用User对象的方法
2015/07/23 Python
python实现图片文件批量重命名
2020/03/23 Python
python list格式数据excel导出方法
2018/10/31 Python
Python数据分析模块pandas用法详解
2019/09/04 Python
Python使用Matlab命令过程解析
2020/06/04 Python
jupyter notebook更换皮肤主题的实现
2021/01/07 Python
搞笑征婚广告词
2014/03/17 职场文书
《彩色世界》教学反思
2014/04/12 职场文书
关于学习的演讲稿
2014/05/10 职场文书
2014高考励志标语
2014/06/05 职场文书
四风问题对照检查材料整改措施
2014/09/27 职场文书
2014年房地产工作总结范文
2014/11/19 职场文书
中考学习决心书
2015/02/04 职场文书
2015年消费者权益日活动总结
2015/02/09 职场文书
2016新年慰问信范文
2015/03/25 职场文书
《我的美好婚事》动画化决定纪念插画与先导PV公开
2022/04/06 日漫