vue3 组合式api中 ref 和$parent 的使用

这篇具有很好参考价值的文章主要介绍了vue3 组合式api中 ref 和$parent 的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ref 的使用

vue3中, 在 组件中添加一个 component ref=“xxx” ,就可以在父组件中得到 子组件的 dom 对象, 以及 虚拟的 dom 对象, 有了虚拟 dom, 我们就可以在父组件中控制子组件的显示了

ref 的使用方法

vue3 组合式api中 ref 和$parent 的使用,vue.js,javascript,前端

vue3中ref 的特点

以上如果在vue2中,就可以使用 子组件的对象来改变子组件的数据, 和调用子组件的方法了, 但是在vue3 , 这样做还是不行的, 还要做一步操作才可以,也就是要在子组件中, 把父组件想用的方法或属性暴露出去才可以
vue3 组合式api中 ref 和$parent 的使用,vue.js,javascript,前端

以上是父组件通过 ref 来得到子组件的对象, 进而控制子组件中的 属性和方法
那么我们通过子组件, 如何去控制父组件的属性和方法呢。那就不止一种方法了
emit mitt(bus) 都是可以了, 这里要说的是 和 ref 相类似的 $parent 方法
$parent 可以添加在子组件中的事件参数上, 参数名称必须是 $parent,这样在事件的回调方法中就可以,得到父组件的对象, 并控制其中的属性和方法了。
同样的道里, 我们要在父组件中, 把要使用的方法或属性暴露出来才可以使用


下面给出一个样例, 父组件中的按钮可以改变子组件中的属性, 并且子组件中的按钮可以改变父组件中的

父组件

<template>
  <div class="baba">
    我是父组件, 我的资产是 {{money}}
    <button @click="borrow100">点击我从儿子那里拿1000</button>
    <hr/>
    <erzi ref="son"></erzi>   //变量中定义一个和 ref 同名的,就可以得到子组件的对象
  </div>
</template>

<script setup>
  import {ref} from "vue";
  import erzi from "@/views/Home/erzi.vue";
  let money = ref(100000000);
  let son = ref()   //通过 ref 获取到子组件的对象
  const borrow100 = ()=>{   //这里点击了父组件的按钮, 去改变子组件的 money  属性
    money.value+=1000;
    son.value.money -= 1000;
  }
  defineExpose({money})	//这里是通过暴露父组件的 money 属性, 给子组件来使用
</script>

子组件文章来源地址https://www.toymoban.com/news/detail-689226.html

<template>
  <div class="erzi">
    我是子组件, 我的资产是 {{ money }}
    <button @click="yao20($parent)">点击我们父亲那里拿 20</button>
    			//这里子组件的事件使用的 $parent 来做参数,必须使用 $parent 才可以得到父组件的对象
  </div>
</template>

<script setup>
  import {ref} from "vue";
  let money = ref(88888888);
  const yao20 = (p)=>{    //这是子组件中的事件, 触发更改父组件的属性
  							//根据传参可以知道  p 就是父组件的对象
    money.value +=20;
    p.money -=20;
  }
  defineExpose({			//这里是暴露 子组件的 money属性, 因为父组件需要使用,
  							//如果需要的话, 这里也可以暴露方法
    money
  })
</script>

到了这里,关于vue3 组合式api中 ref 和$parent 的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Vue3组合式API

    Vue3组合式API

    目录 composition API vs options API 体验 composition API setup 函数 reactive 函数 ref 函数 script setup 语法 计算属性 computed 函数 监听器 watch 函数 生命周期 模板中 ref 的使用 组件通讯 - 父传子 组件通讯 - 子传父 依赖注入 - provide 和 inject 保持响应式 - toRefs 函数 vue2 采用的就是 options API (

    2024年02月07日
    浏览(11)
  • vue3组合式API介绍

    根据官方的说法,vue3.0的变化包括性能上的改进、更小的 bundle 体积、对 TypeScript 更好的支持、用于处理大规模用例的全新 API,全新的api指的就是本文主要要说的组合式api。 在 vue3 版本之前,我们复用组件(或者提取和重用多个组件之间的逻辑),通常有以下几种方式: M

    2023年04月22日
    浏览(12)
  • 快速入门vue3组合式API

    快速入门vue3组合式API

    (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 使用create-vue创建项目 熟悉项目目录和关键文件  组合式API  setup选项 setup选项的写法和执行时机 script setup 语法糖 reactive和ref函数 reactive() ref() computed watch 侦听单个数据

    2024年02月12日
    浏览(10)
  • Vue3的组合式API中如何使用setup()函数中的条件渲染和循环渲染

    首先,让我们来了解一下什么是Vue3的组合式API。组合式API是一种在Vue3中用于构建组件的方式,它使用函数式编程的方法来组织代码,让你的组件更加清晰、易于理解和维护。而setup()函数则是组合式API的核心,它用于初始化组件并返回包含组件数据的对象。 现在,让我们来看

    2024年02月11日
    浏览(10)
  • 【Vue3】如何创建Vue3项目及组合式API

    【Vue3】如何创建Vue3项目及组合式API

    文章目录 前言 一、如何创建vue3项目? ①使用 vue-cli 创建  ②使用可视化ui创建  ③npm init vite-app   ④npm init vue@latest 二、 API 风格 2.1 选项式 API (Options API) 2.2 组合式 API (Composition API) 总结 例如:随着前端领域的不断发展,vue3学习这门技术也越来越重要,很多人都开启了学习

    2024年02月03日
    浏览(9)
  • vue3 组合式 api 单文件组件写法

    Vue3 中的 Composition API 是一种新的编写组件逻辑的方式,它提供了更好的代码组织、类型推导、测试支持和复用性。相比于 Vue2 的 Options API,Composition API 更加灵活和可扩展。 在 Composition API 中,我们使用 setup 函数来定义组件的逻辑部分。setup 函数是一个特殊的函数,在创建组

    2024年02月12日
    浏览(11)
  • vue3组合式api单文件组件写法

    一,模板部分  二,js逻辑部分 

    2024年02月13日
    浏览(16)
  • vue3:7、组合式API-watch

    vue3:7、组合式API-watch

     

    2024年02月09日
    浏览(12)
  • 带你了解vue3组合式api基本写法

    本文的目的,是为了让已经有 Vue2 开发经验的 人 ,快速掌握 Vue3 的写法。 因此, 本篇假定你已经掌握 Vue 的核心内容 ,只为你介绍编写 Vue3 代码,需要了解的内容。 一、Vue3 里 script 的三种写法 首先,Vue3 新增了一个叫做组合式 api 的东西,英文名叫 Composition API。因此 Vu

    2024年02月01日
    浏览(11)
  • Vue3: 选项式API和组合式API的优缺点

    Vue框架提供了两种不同的API风格来编写组件,分别是 选项式API 和 组合式API 。 一.选项式API: 选项式API是vue2.x版本中默认使用的API风格,它是基 于对象的方式 来描述组件的行为和状态的。选项式API需要在Vue组件的选项对象中声明组件的属性和方法,如data、methods、computed、

    2024年02月09日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包