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 相关文章推荐
用JavaScript脚本实现Web页面信息交互
Dec 21 Javascript
js+div实现图片滚动效果代码
Feb 10 Javascript
JQuery中的事件及动画用法实例
Jan 26 Javascript
JavaScript中的fontsize()方法使用详解
Jun 08 Javascript
js实现的动画导航菜单效果代码
Sep 10 Javascript
JS利用cookie记忆当前位置的防刷新导航效果
Oct 15 Javascript
Jquery ajax请求导出Excel表格的实现代码
Jun 08 Javascript
详解微信小程序 相对定位和绝对定位
May 11 Javascript
浅谈Node异步编程的机制
Oct 18 Javascript
JS数组方法concat()用法实例分析
Jan 18 Javascript
vue中渲染对象中属性时显示未定义的解决
Jul 31 Javascript
小程序wx.getUserProfile接口的具体使用
Jun 02 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图片加中文水印实现代码分享
2012/10/31 PHP
php等比例缩放图片及剪切图片代码分享
2016/02/13 PHP
php投票系统之增加与删除投票(管理员篇)
2016/07/01 PHP
JS onmousemove鼠标移动坐标接龙DIV效果实例
2013/12/16 Javascript
jquery访问ashx文件示例代码
2014/08/11 Javascript
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
jQuery中hide()方法用法实例
2014/12/24 Javascript
JS跨域交互(jQuery+php)之jsonp使用心得
2016/07/01 Javascript
EasyUI Pagination 分页的两种做法小结
2016/07/09 Javascript
canvas 画布在主流浏览器中的尺寸限制详细介绍
2016/12/15 Javascript
详解JS数据类型的值拷贝函数(深拷贝)
2017/07/13 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
Angular2环境搭建具体操作步骤(推荐)
2017/08/04 Javascript
Vue响应式原理深入解析及注意事项
2017/12/11 Javascript
Vue.js点击切换按钮改变内容的实例讲解
2018/08/22 Javascript
Vue中的Props(不可变状态)
2018/09/29 Javascript
Vue computed 计算属性代码实例
2020/04/22 Javascript
三步搞定:Vue.js调用Android原生操作
2020/09/07 Javascript
python使用any判断一个对象是否为空的方法
2014/11/19 Python
神经网络python源码分享
2017/12/15 Python
scrapy爬虫完整实例
2018/01/25 Python
tensorflow识别自己手写数字
2018/03/14 Python
python-pyinstaller、打包后获取路径的实例
2019/06/10 Python
Python流程控制语句的深入讲解
2020/06/15 Python
用python写一个带有gui界面的密码生成器
2020/11/06 Python
欧洲高端品牌直销店:Fashionesta
2016/08/31 全球购物
物流专业毕业生推荐信范文
2013/11/18 职场文书
单位工程竣工验收方案
2014/03/16 职场文书
社区党建工作方案
2014/06/10 职场文书
文明城市标语
2014/06/16 职场文书
工伤私了协议书范本
2014/11/24 职场文书
失职检讨书大全
2015/01/26 职场文书
应届毕业生自荐信
2015/03/04 职场文书
导游词书写之黄山
2019/08/06 职场文书
这样写python注释让代码更加的优雅
2021/06/02 Python
k8s部署redis cluster集群的实现
2021/06/24 Redis