vue中ref的使用

2023-11-15

今天看了别人写的代码,有些地方不太理解,查阅资料之后真的是受益匪浅,在这里分享给大家。
<template>
  <div>
    <!-- vue中的ref功能很强大,介绍一下如何使用的。基本用法:本页面获取dom元素。 -->
    <div id="app">
      <div ref="testDom">111</div>
      <button @click="getTest">获取test节点</button>
    </div>
  </div>
</template>

<script>
export default {
    methods:{
      getTest(){
        console.log(this.$refs.testDom);
      }
    }
}
</script>

<style>

</style>


ref除了可以获取本页面的dom元素,还可以拿到子组件中的data和去调用子组件中的方法。
通过ref。父组件里面只要设置过ref的组件,都可以通过this.$refs[childeName]拿到子组件。
如果有两个子组件同时都叫 ref="abc"。那么 this.$refs.abc就是数组。如果只有一个,就是直接是那个子组件。

<template>
  <div>
    <!-- ref除了可以获取本页面的dom元素,还可以拿到子组件中的data和去调用子组件中的方法。 -->
    <div id="app">
      <HelloWorld ref="hello"/>
      <button @click="getHello">获取helloworld组件中的值</button>
    </div>
  </div>
</template>

<script>
// 1.导入import组件。 2.声明组件。3.组件标签显示组件。
import { HelloWorld } from "./components/HelloWorld.vue";

export default {
  components:{HelloWorld},
  data(){
    return{}
  },
  methods:{
    getHello(){
      console.log(this.$refs.hello.msg)
    }
  },
}
</script>

<style>

</style>

子组件:

<template>
  <div>
    <!-- 子组件 -->
    {{msg}}
  </div>
</template>

<script>
export default {
  data(){
    return{
      msg:"hello world"
    }
  }
}
</script>

<style>

</style>

调用子组件中的方法:

子组件:

<template>
<div>
  <!-- 子组件 -->
</div>
</template>

<script>
export default {
  methods:{
    open(){
      // 打印
      console.log("方法调用到了。");
    }
  }
}
</script>

<style></style>

父组件

<template>
  <div id="app">
    <HelloWorld ref="hello"/>
    <button @click="getHello">获取helloworld组件中的值</button>
  </div>
</template>

<script>
//1.导入子组件。2.声明子组件。3.组件标签。

import HelloWorld from "./components/HelloWorld.vue";
export default {
  components:{HelloWorld},
  data(){return{}},
  methods:{
    getHello(){
      this.$refs.hello.open();
    },
  }

}
</script>

<style>

</style>

子组件调用父组件的方法

子组件

<template>
<!-- 这是子组件 -->
  <div></div>
</template>

<script>
export default {
  open(){
    console.log("调用了父组件中的方法。");
    // 调用了父组件中的方法  用this.$emit中写父组件的方法。this.$emit("refreshData");
  }
}
</script>

<style></style>

父组件

<template>
<!-- 这是父组件 -->
  <div id="app">
    <HelloWorld>
  </div>
</template>

<script>
import { HelloWorld } from "./components/HelloWorld.vue";
export default {
  components:{
    HelloWorld
  },
  data(){
    return{}
  },
  methods:{
    getHello(){
      this.$refs.hello.open()
    },
    getData(){
      console.log('11111');
    }
  }
}
</script>

<style>

</style>

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue中ref的使用 的相关文章

  • 在 Google 表格脚本中设置活动单元格的值

    我想创建一个公式 在某个单元格更改上创建时间戳 下面的代码就可以了 我现在想做的是将公式转换为纯文本 将该时间戳锚定到工作表上 如果您手动执行此操作 您将选择时间戳 复制它们并将它们粘贴为值 我不想手动执行此操作 因此我创建了下面的脚本 它
  • 在其他不可滚动的 div 上滚动时如何滚动可滚动的 div?

    我知道这个问题听起来很令人困惑 但这就是我想要做的 在下面的代码片段中 如果用户在绿色 div 上滚动 我希望黄色 div 相应地滚动 就像滚动黄色 div 一样 请注意 黄色 div 有overflow auto 但绿色的则不然 docu
  • JavaScript - 无需布尔值即可运行一次

    有没有办法只运行一段JavaScript代码ONCE 而不使用布尔标志变量来记住它是否已经运行过 具体来说not就像是 var alreadyRan false function runOnce if alreadyRan return a
  • 如何在 Sequelize ORM 中限制连接行(多对多关联)?

    Sequelize 定义了两种模型 具有多对多关联的 Post 和 Tag Post belongsToMany db Tag through post tag foreignKey post id timestamps false Tag
  • 实现悬停信息框

    我有一个日历 当用户将鼠标悬停在单元格上时 会出现一个很大的信息框 其中包含该日期的详细信息 虽然当用户离开时使信息框消失 但我遇到了一些麻烦 我基本上想要它 这样当鼠标光标移出信息框隐藏的日历单元格时 它就会消失 但我遇到了麻烦 因为mo
  • React 应用程序中的 addEventListener 不起作用

    一些背景 我正在尝试消费自定义网络组件在 React 应用程序中并尝试监听来自 Web 组件的事件 我相信您不能只在自定义 Web 组件上以通常的反应方式处理事件 i e
  • 如果用户在 Laravel 中经过身份验证,如何检查 Vue 组件?

    正如标题所述 我有点困惑如何根据用户是否登录并使用 Laravel 的 Auth 外观进行身份验证 使用 if else 语句处理 Vue 组件中的方法 我正在发出各种 Axios 请求 我需要根据用户是否登录来允许 禁止这些请求 我有 V
  • 使用 :hover 作为元素的内联样式(使用 HTML/CSS/php)[重复]

    这个问题在这里已经有答案了 可能的重复 如何将 a hover 规则嵌入到文档中间的样式属性中 https stackoverflow com questions 131653 how do i embed an ahover rule i
  • 避免在 ES6 的函数内定位 this 的对象作用域

    例如 我正在使用 D3 js 运行一个项目 导入特定模块并调用它们的函数 Setup TypeScript ES6 导入特定的 D3 组件 角6 我有一个对象 在本例中是一个角度指令 并在 SVG 画布上绘制一些圆圈 并希望它们在拖动事件上
  • 构建 Vue 微前端应用程序(带有路由和 vuex 存储)

    我需要帮助配置使用 Vuex Vue Router 和 Vue i18n 的微前端应用程序的构建 分发 TL DR 我在构建将导入到现有系统中的微前端应用程序时遇到问题 我们的团队尝试通过 vue cli service 和 vue web
  • 自定义指令链接中的 element.replaceWith 仅在第一次调用时有效

    我是 Angularjs 的新手 不太了解幕后的情况 基本上我想创建一个 E 扭结指令 基于控制器中的数据 我动态创建html 就像整个 表 一样 以替换该指令 我的 html 文件中的指令是这样的
  • 将 window.location 传递给 Flask url_for

    我正在使用 python 在我的页面上 当匿名用户转到登录页面时 我想将一个变量传递到后端 以便它指示用户来自哪里 发送 URL 因此 当用户单击此锚链接时 a href Sign in a 我想发送用户当前所在页面的当前 URL
  • @aspnet/signalr 与 @microsoft/signalr javascript 库

    aspnet signalr 与 microsoft signalr javascript 库有什么区别 两者似乎都对 DotNetCore SignalR 有效 两者似乎都很活跃 在一些教程中 我找到 aspnet signalr 在Do
  • 根据特定字符获取整个字符串或子字符串

    我有一个包含 MIME 类型的字符串 例如application json 现在我想将其与实际的 HTTP 标头进行比较 在本例中content type 如果标头包含 MIME 类型 那么就很简单 if mimeType contentT
  • JavaScript 提升解释

    下面的片段有什么区别 var a 0 function b a 10 return function a b console log a gt 10 and var a 0 function b a 10 return function a
  • Outlook 加载项,无法读取未定义的属性“BeginRequestEventArgs”

    我使用 Visual Studio 开发了 Outlook 插件 我的插件有一个按钮 用于填充会议邀请正文中的详细信息并添加所需的与会者 这在 99 的情况下都有效 但是 时不时地它会给我下面的 JavaScript 错误 Uncaught
  • 不使用控件时,视频元素在 Chrome 中消失

    So I think这是一个浏览器错误 它出现在一个更复杂的设计 网站中 但我已经进行了很好的尝试 简化了我的代码和设计等 并发现了以下内容 嵌入时
  • AngularJS 在指令运行之前通过 AJAX 检索数据

    我正在使用 AngularUIuiMap http angular ui github com directives map实例化谷歌地图的指令 uiMap 指令非常适合处理硬编码数据 mapOptions and myMarkers 但是
  • p5 向量减法“sub”返回错误

    我一直在尝试将 p5 草图上传到 React 构建中 使用react p5 wrapper 我能够成功在屏幕上渲染画布 但是 某些矢量函数会导致错误 var distance this position dist ball position
  • DOM 解析器 Chrome 扩展内存泄漏

    问题 我开发了一个扩展程序 可以拦截 Web 请求 获取 Web 请求来源的 HTML 并对其进行处理 我使用 DOMParser 来解析 HTML 并且意识到 DOMParser 正在导致大量内存泄漏问题 最终导致 chrome 扩展崩溃

随机推荐

  • sql语句查询重复的数据

    查找所有重复标题的记录 SELECT FROM t info a WHERE SELECT COUNT FROM t info WHERE Title a Title gt 1 ORDER BY Title DESC 一 查找重复记录 1
  • PMBOK(第六版) PMP笔记——《第十章 项目沟通管理》

    第十章 项目沟通管理 PM 大多数时间都用在与干系人的沟通上 第十章有三个过程 规划沟通管理 根据干系人的需求 制定沟通管理计划 管理沟通 根据沟通管理计划发布 收集 处理信息 监督沟通 确保在正确时间将正确信息传递给正确的人 1 10 1
  • 花生壳内网穿透+Windows系统,如何搭建网站?

    1 准备工作 在百度搜索 Win7下安装Apache PHP MySQL 根据搜到的教程自行安装WAMP环境 如果在网页上键入http 127 0 0 1 nbsp 出现以下页面表示您的服务器已经建好 下一步就是关键 如何通过花生壳内网穿透
  • 大家平时天天说的分布式系统到底是什么东西

    V xin ruyuanhadeng获得600 页原创精品文章汇总PDF 目录 从单块系统说起 团队越来越大 业务越来越复杂 分布式出现 庞大系统分而治之 分布式系统所带来的技术问题 一句话总结 什么是分布式系统设计和开发经验 补充说明 中
  • 【死磕 NIO】— ServerSocketChannel 的应用实例

    大家好 我是大明哥 一个专注于 死磕 Java 的程序员 死磕 Java 系列为作者 chenssy 倾情打造的 Java 系列文章 深入分析 Java 相关技术核心原理及源码 死磕 Java https www cmsblogs com
  • java大数据开发训练营--Java Web 后端技术基础(下)之Spring IOC控制反转

    一 Spring概述 1 1 Spring是什么 Spring是分层的 Java SE EE应用 full stack 全栈式 轻量级开源框架 提供了表现层 SpringMVC和持久层 Spring JDBC Template以及 业务层
  • 目标检测 3—— 人脸检测

    笔记来源 DeepLearning 500 questions 上次学习了目标检测的基本概念 Two Stage和 One Stage 算法 1 目标检测Two Stage 2 目标检测One Stage 4 人脸检测 在目标检测领域可以划
  • rk3368 Android9.0 HIDL调试记录

    rk3368 Android9 0 HIDL调试记录 Platform RK3368 OS Android 9 0 Kernel 4 4 194 文章目录 rk3368 Android9 0 HIDL调试记录 1 使用hidl gen工具生
  • AD使用插件生成交互式BOM

    AD使用插件生成交互式BOM 1 下载AD用交互式BOM插件 首先前往GitHub下载这位大佬开发的插件 地址 https github com lianlian33 InteractiveHtmlBomForAD 下载完成后打开文件所在位
  • 请实现一个简单的网页计算器(vue)

    练习一下父组件向子组件传值 计算部分用eval方法实现 运行截图如下 话不多说 上代码 页面结构 div div
  • JAVA08_Stream流anyMatch和allMatch和noneMatch的区别

    allMatch全匹配 判断数据列表中全部元素都符合设置的predicate条件 如果是就返回true 否则返回false 流为空时总是返回true 接口定义 boolean allMatch Predicate
  • 【华为】Redis客户端API使用(java)

    1 概述 目标读者 本文档专供需要Redis客户端API调用的开发人员 适用于具备Java开发经验的开发人员 简介 Redis客户端通过API调用 向Redis发起命令调用 向Redis或写入或读出数据 基本概念 Redis服务端 提供服务
  • 计算机cpi的公式,EAC=BAC/CPI;EAC=AC+( BAC-EV)/CPI公式分别在什么情况下使用?

    EAC BAC CPI EAC AC BAC EV CPI公式分别在什么情况下使用 来源 信管网 2018年10月30日 所有评论 横渡大漠 cnitpm com 08 21 35 帮忙解释一下 什么情况下用EAC BAC CPI 算 什么
  • 木兰开源社区分论坛

    ChinaOSC 2022 木兰开源社区 技术论坛将于 2022年8月21日15 00 17 30 在陕西省西安高新国际会议中心 会议室 召开 聚焦开源许可证与标准 探索开源发展模式 为国内开源产业打地基 木兰开源社区做了什么 还要怎么做
  • 黑客攻防入门(二)shellcode构造

    1 概说 shell我们都知道是什么了吧 狭义的shellcode 就是一段可以运行shell的代码 构造一段shellcode的作用就是为了在缓冲区溢出时将shellcode的地址覆盖掉正常的返回地址 shellcode通常放在缓冲区内
  • 视觉工程师手写文档之优秀程序员指南篇

    首先 这是我从第一次开始走出校园就一直在完善的一些指南 本来是给自己看的 但现在离职期间再翻看到之后 感触良多 就做了分享 里面很多内容是我在CSDN技术博客上看到的 我认为写的很好的 有些是我自己的总结 大家看看就好
  • Android 中简单计时器的实现方法(Handler和TimerTask)

    博主前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住也分享一下给大家 点击跳转到网站 方法一 用handler线程创建计时器 计时器效果如下 第一步 写xml文件
  • 09-1_Qt 5.9 C++开发指南_Qchart概述

    Qt Charts 可以很方便地绘制常见的折线图 柱状图 饼图等图表 不用自己耗费时间和精力开发绘图组件或使用第三方组件了 本章首先介绍 Qt Charts 的基本特点和功能 以画折线图为例详细说明 Qt Charts 各主要部件的操作方法
  • 算法基础课:第一讲——基础算法

    文章目录 前言 排序 1 快速排序 作用 算法思想 模板 例题 AC代码 2 归并排序 作用 算法思想 模板 例题 AC代码 二分 1 整数二分 作用 算法思想 模板 例题 AC代码 总结 2 浮点数二分 算法思想 模板 例题 AC代码 高
  • vue中ref的使用

    今天看了别人写的代码 有些地方不太理解 查阅资料之后真的是受益匪浅 在这里分享给大家