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 相关文章推荐
在IE下获取object(ActiveX)的Param的代码
Sep 15 Javascript
基于jquery创建的一个图片、视频缓冲的效果样式插件
Aug 28 Javascript
基于MVC3方式实现下拉列表联动(JQuery)
Sep 02 Javascript
JavaScript cookie的设置获取删除详解
Feb 11 Javascript
让IE8浏览器支持function.bind()方法
Oct 16 Javascript
jQuery实现仿QQ空间装扮预览图片的鼠标提示效果代码
Oct 30 Javascript
jQuery简单实现彩色云标签效果示例
Aug 01 Javascript
微信开发 使用picker封装省市区三级联动模板
Oct 28 Javascript
jQuery实现的省市联动菜单功能示例【测试可用】
Jan 13 Javascript
promise处理多个相互依赖的异步请求(实例讲解)
Aug 03 Javascript
详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)
Feb 02 Javascript
ES10 特性的完整指南小结
Mar 04 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
phpMyAdmin 安装教程全攻略
2007/03/19 PHP
那些年一起学习的PHP(二)
2012/03/21 PHP
php将字符串转化成date存入数据库的两种方式
2014/04/28 PHP
PHP APC配置文件2套和参数详解
2014/06/11 PHP
PHP扩展mcrypt实现的AES加密功能示例
2019/01/29 PHP
IE 下Enter提交表单存在重复提交问题的解决方法
2014/05/04 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
深入理解JavaScript系列(29):设计模式之装饰者模式详解
2015/03/03 Javascript
jQuery常用知识点总结以及平时封装常用函数
2016/02/23 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
基于javascript实现tab切换特效
2016/03/29 Javascript
jQuery根据表单name获取值的方法
2016/05/24 Javascript
js 作用域和变量详解
2017/02/16 Javascript
微信小程序 本地图片按照屏幕尺寸处理
2017/08/04 Javascript
BootStrap下的弹出框加载select2框架失败的解决方法
2017/08/31 Javascript
10个在JavaScript开发中常遇到的BUG
2017/12/18 Javascript
如何在 JavaScript 中更好地利用数组
2018/09/27 Javascript
新手快速上手webpack4打包工具的使用详解
2019/01/28 Javascript
vue使用echarts画组织结构图
2021/02/06 Vue.js
python实现获取客户机上指定文件并传输到服务器的方法
2015/03/16 Python
python实现随机森林random forest的原理及方法
2017/12/21 Python
Python实现生成随机数据插入mysql数据库的方法
2017/12/25 Python
python实现贪吃蛇游戏
2020/03/21 Python
Django框架orM与自定义SQL语句混合事务控制操作
2019/06/27 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
2019/12/11 Python
Python实现桌面翻译工具【新手必学】
2020/02/12 Python
Python GUI编程学习笔记之tkinter界面布局显示详解
2020/03/30 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
ASP.NET Core中的配置详解
2021/02/05 Python
HTML5 canvas基本绘图之绘制五角星
2016/06/27 HTML / CSS
Brasty罗马尼亚:购买手表、香水、化妆品、珠宝
2020/04/21 全球购物
大跃进口号
2014/06/16 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
驻村工作简报
2015/07/20 职场文书
关于运动会的宣传稿
2015/07/23 职场文书
常用的MongoDB查询语句的示例代码
2021/07/25 MongoDB