Vue父组件如何获取子组件中的变量


Posted in Javascript onJuly 24, 2019

在vue项目日常开发中,难免要把功能性组件抽离出来,这样结构就会出现父子组价,兄弟组件等,但是这样就会涉及到不同组件需要互相使用其中的值得问题。

之前有说过通过ref来让父组件操作子组件,并且传值,那么我们今天来详细看看。

案例一:点击父组件的按钮,操作子组件显示

注:可以通过获取id/class来操作,这里我就不介绍这种方法了,至于jquery的话,在vue中还是慎用。

介绍:这里通过给子组件绑定ref属性,引号命名自定义,然后父组件通过 this.$refs.名字 就可以操作子组件的元素,以改变它的样式等。

<template>
 <div class="DbSource-box">
 <el-button type="primary" icon="" class="addBtn" @click="addDbSource()">新增</el-button>
 <db-source-add ref="addAlert" v-on:init="init"></db-source-add>
 </div>
</template>
 
<script>
 import DbSourceAdd from "../components/DbSourceManager/DbSourceAdd";
 export default {
 name: "DbSourceManager",
 components: {DbSourceAdd},
 methods: {
  // 点击新增按钮,弹出新增数据源的弹框
  addDbSource(){
  this.$refs.addAlert.$el.style.display = "block";
  },
 }
 }
</script>

案列二:获取子组件data中的变量

介绍:

父组件:

这里通过给子组件绑定ref属性,引号中的命名自定义,然后父组件通过 this.$refs.名字.变量名 就可以获得子组件中的值

<template>
 <div class="DbSource-box">
 <el-button type="primary" icon="" class="selectBtn" @click="deleteSelectDbSource()">批量删除</el-button>
 <db-source-table ref="getSelectData" :Data="Data" v-on:init="init"></db-source-table>
 </div>
</template>
 
<script>
 import DbSourceTable from "../components/DbSourceManager/DbSourceTable";
 export default {
 name: "DbSourceManager",
 components: {DbSourceTable},
 methods: {
  // 删除选中的数据源(批量删除)
  deleteSelectDbSource(){
  console.log(this.$refs.getSelectData.multipleSelection)
  },
 }
 }
</script>

子组件:

<template>
 <div class="table-box">
 
 </div>
</template>
 
<script>
 export default {
 name: "DbSourceTable",
 props:["Data"],
 data(){
  return {
  multipleSelection:[],
  pagesize: 3,
  currpage: 1,
  currId:""
  }
 }
</script>

好了,以上就是父组件获取子组件的值并且操作子组件的方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery ajax 同步异步的执行示例代码
Jun 23 Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
Oct 21 Javascript
jQuery Mobile和HTML5开发App推广注册页
Nov 07 Javascript
微信小程序 简单教程实例详解
Jan 13 Javascript
利用Javascript裁剪图片并存储的简单实现
Mar 13 Javascript
微信小程序 图片宽高自适应详解
May 11 Javascript
使用JQ完成表格隔行换色的简单实例
Aug 25 Javascript
mui back 返回刷新页面的实例
Dec 06 Javascript
layui实现checkbox的目录树tree的例子
Sep 12 Javascript
微信小程序绑定手机号获取验证码功能
Oct 22 Javascript
javascript实现评分功能
Jun 24 Javascript
Vue如何将页面导出成PDF文件
Aug 17 Javascript
mock.js模拟数据实现前后端分离
Jul 24 #Javascript
vue+mock.js实现前后端分离
Jul 24 #Javascript
微信小程序如何修改radio和checkbox的默认样式和图标
Jul 24 #Javascript
Vue封装的组件全局注册并引用
Jul 24 #Javascript
vue子路由跳转实现tab选项卡
Jul 24 #Javascript
如何在Angular8.0下使用ngx-translate进行国际化配置
Jul 24 #Javascript
Vue.js路由实现选项卡简单实例
Jul 24 #Javascript
You might like
php socket方式提交的post详解
2008/07/19 PHP
解析linux下安装memcacheq(mcq)全过程笔记
2013/06/27 PHP
PHP系统命令函数使用分析
2013/07/05 PHP
PHP获取链表中倒数第K个节点的方法
2018/01/18 PHP
使用隐藏的new来创建对象
2011/03/29 Javascript
自定义一个jquery插件[鼠标悬浮时候 出现说明label]
2011/06/27 Javascript
javascript按位非运算符的使用方法
2013/11/14 Javascript
Jquery动态添加及删除页面节点元素示例代码
2014/06/16 Javascript
jquery自动补齐功能插件flexselect用法示例
2016/08/06 Javascript
jQuery删除当前节点元素
2016/12/07 Javascript
简单快速的实现js计算器功能
2017/08/17 Javascript
Three.js利用Detector.js插件如何实现兼容性检测详解
2017/09/26 Javascript
vue移动端实现红包雨效果
2020/06/23 Javascript
angularjs 动态从后台获取下拉框的值方法
2018/08/13 Javascript
jQuery提示框插件SweetAlert用法分析
2019/08/05 jQuery
express中static中间件的具体使用方法
2019/10/17 Javascript
用 Python 连接 MySQL 的几种方式详解
2018/04/04 Python
python实现趣味图片字符化
2019/04/30 Python
关于PyTorch 自动求导机制详解
2019/08/18 Python
Python使用tkinter模块实现推箱子游戏
2019/10/08 Python
Python中包的用法及安装
2020/02/11 Python
浅谈keras使用中val_acc和acc值不同步的思考
2020/06/18 Python
一些关于python 装饰器的个人理解
2020/08/31 Python
OnePlus加拿大官网:中国国际化手机品牌
2020/10/13 全球购物
第一范式(1NF)、第二范式(2NF)和第三范式(3NF)之间的区别是什么?
2016/04/28 面试题
库房管理员岗位职责
2014/03/09 职场文书
爱国口号
2014/06/19 职场文书
应届生求职自荐信
2014/07/04 职场文书
班级活动总结格式
2014/08/30 职场文书
2014副局长群众路线对照检查材料思想汇报
2014/09/22 职场文书
2014年教师工作总结
2014/11/10 职场文书
人间正道是沧桑观后感
2015/06/15 职场文书
安全第一课观后感
2015/06/18 职场文书
毕业证明模板
2015/06/19 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书
Python探索生命起源 matplotlib细胞自动机动画演示
2022/04/21 Python