基于Vue中的父子传值问题解决


Posted in Javascript onJuly 27, 2020

主题是Vue中几种常见的传值方法。。。先写个父子传值吧

vue-cli构建项目目录,噜啦啦,这个就不用说了吧。

接着创建父子组件,父组件Father.vue,子组件Son.vue(随意起名,开心就好),然后在父组件中引入子组件,创建一个父组件的路由。车门已经焊死了,请继续往下看

1.父传子

Father.vue(用v-bind(简写 : ) 将父组件传的值绑定到子组件上)

<template>
 <div>
  我是爸爸:{{message}}
  <hr>
  <Son :toSonData="toSonData"></Son>
 </div>
</template>
 
<script>
import Son from "./Son.vue";
export default {
 data() {
 return {
  message : "儿子你好",
  toSonData: "大嘴巴子"//给子组件的值
 };
 },
 
 components: {
 Son
 }
};
</script>
<style lang='scss' scoped>
</style>

Son.vue(在子组件中用props方法接收父组件传来的值,两种方法,具体用哪种看个人喜好,推荐第二种)

<template>
 <div>
 我是儿子:{{message}}
 <br>
 爸爸给我的礼物:{{toSonData}}
 </div>
</template>
 
<script>
export default {
 // props:["toSonData"],//第一种方式
 props:{//第二种方式
 toSonData:{
  type:String,
  default:function(){
  return ""
  }
 }
 },
 data () {
 return {
  message : "爸爸你好"
 };
 },
}
 
</script>
<style lang='scss' scoped>
</style>

效果图:

基于Vue中的父子传值问题解决

2.子传父

Son.vue(在子组件中创建一个按钮,定义一个点击事件,点击事件里用this.$emit方法触发一个自定义事件,并传递一个参数)

<template>
 <div>
 我是儿子:{{message}}
 <br>
 爸爸给我的礼物:{{toSonData}}
 <br>
 <button @click="toFatherData">给爸爸传值</button>
 </div>
</template>
 
<script>
export default {
 // props:["toSonData"],//第一种方式
 props:{//第二种方式
 toSonData:{
  type:String,
  default:function(){
  return ""
  }
 }
 },
 data () {
 return {
  message : "爸爸你好"
 };
 },
 methods:{
 toFatherData(){
  this.$emit("toFatherData","给爸爸的爱")
 }
 }
}
 
</script>
<style lang='scss' scoped>
</style>

Father.vue(在父组件中的子标签中监听该自定义事件并添加一个响应该事件的处理方法,将接收到的值赋给data中的sendSonMessage)

<template>
 <div>
  我是爸爸:{{message}}
  <br>
  儿子传来的值:{{sendSonMessage}}
  <hr>
  <Son :toSonData="toSonData" @toFatherData="sendSonData"></Son>
 </div>
</template>
 
<script>
import Son from "./Son.vue";
export default {
 data() {
 return {
  message : "儿子你好",
  toSonData: "大嘴巴子",//给子组件的值
  sendSonMessage: ""
 };
 },
 
 components: {
 Son
 },
 methods:{
 sendSonData(data){
  this.sendSonMessage=data;
 }
 }
};
</script>
<style lang='scss' scoped>
</style>

效果图:

基于Vue中的父子传值问题解决

补充知识:在vue中的for循环,我经常用这两种方法

1、

for(let item of response.data.result) {

用item操作每一条数据。
}

item:定义的每一条的变量

response.data.result:要循环的数组

2、

response.data.result.forEach((item, index) => {

用item操作每一条数据。
})

response.data.result:要循环的数组

index:索引

以上这篇基于Vue中的父子传值问题解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
html数组字符串拼接的最快方法
Sep 16 Javascript
Dojo 学习笔记入门篇 First Dojo Example
Nov 15 Javascript
js 操作select相关方法函数
Dec 06 Javascript
Javascript学习笔记二 之 变量
Dec 15 Javascript
script的async属性以非阻塞的模式加载脚本
Jan 15 Javascript
调试Javascript代码(浏览器F12及VS中debugger关键字)
Jan 25 Javascript
jQuery模拟点击A标记示例参考
Apr 17 Javascript
全面解析Bootstrap表单使用方法(表单控件状态)
Nov 24 Javascript
Jquery调用iframe父页面中的元素及方法
Aug 23 Javascript
bootstrap table复杂操作代码
Nov 01 Javascript
Vue如何实现响应式系统
Jul 11 Javascript
node.js中 redis 的安装和基本操作示例
Feb 10 Javascript
element日历calendar组件上月、今天、下月、日历块点击事件及模板源码
Jul 27 #Javascript
JS图片懒加载技术实现过程解析
Jul 27 #Javascript
Element Notification通知的实现示例
Jul 27 #Javascript
Vue中watch、computed、updated三者的区别及用法
Jul 27 #Javascript
Element Backtop回到顶部的具体使用
Jul 27 #Javascript
解决vue中的无限循环问题
Jul 27 #Javascript
Element MessageBox弹框的具体使用
Jul 27 #Javascript
You might like
PHP 5.3新特性命名空间规则解析及高级功能
2010/03/11 PHP
Discuz批量替换帖子内容的方法(使用SQL更新数据库)
2014/06/23 PHP
9个比较实用的php代码片段
2016/03/15 PHP
PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例
2016/04/11 PHP
JavaScript 面向对象的 私有成员和公开成员
2010/05/13 Javascript
jQuery EasyUI API 中文文档 - Tree树使用介绍
2011/11/19 Javascript
一款jquery特效编写的大度宽屏焦点图切换特效的实例代码
2013/08/05 Javascript
JS实现侧悬浮浮动实例代码
2013/11/29 Javascript
JavaScript实现把数字转换成中文
2015/06/29 Javascript
使用控制台破解百小度一个月只准改一次名字
2015/08/13 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
2016/02/04 Javascript
jquery实现的判断倒计时是否结束代码
2016/02/05 Javascript
JS中关于正则的巧妙操作
2017/08/31 Javascript
vue组件初学_弹射小球(实例讲解)
2017/09/06 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
2017/12/28 Javascript
详解angular2.x创建项目入门指令
2018/10/11 Javascript
小程序和web画三角形实现解析
2019/09/02 Javascript
layui table 多行删除(id获取)的方法
2019/09/12 Javascript
vue.js购物车添加商品组件的方法
2019/09/17 Javascript
layui内置模块layim发送图片添加加载动画的方法
2019/09/23 Javascript
js 获取扫码枪输入数据的方法
2020/06/10 Javascript
区分vue-router的hash和history模式
2020/10/03 Javascript
使用Vant完成Dialog弹框案例
2020/11/11 Javascript
[34:27]DOTA2上海特级锦标赛B组败者赛 VG VS Spirit第一局
2016/02/26 DOTA
[00:14]护身甲盾
2019/03/06 DOTA
jenkins配置python脚本定时任务过程图解
2019/10/29 Python
Python常见反爬虫机制解决方案
2020/06/01 Python
python如何处理程序无法打开
2020/06/16 Python
智能室内花园:Click & Grow
2021/01/29 全球购物
团员个人的自我评价
2013/12/02 职场文书
生日派对邀请函
2014/01/13 职场文书
2014年庆祝国庆65周年演讲稿
2014/09/21 职场文书
行政主管岗位职责
2015/02/03 职场文书
高中生综合素质评价范文
2015/08/18 职场文书
解析目标检测之IoU
2021/06/26 Python
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript