Vue3【十五】标签的Ref属性

Vue3【十五】标签的Ref属性

标签的ref属性 用于注册模板引用

用在dom标签上,获取的是dom节点

用在组件上,获取的是组件实例对象

案例截图

目录结构

代码

app.vue

html 复制代码
<template>
    <div class="app">
        <h1 ref="title2">你好世界! 我是App根组件</h1>
        <button @click="showLog">点我输出h1标签></button>
        <Person ref="rrr" />
    </div>
</template>

<script lang="ts" setup name="App">
import Person from './components/Person.vue'
import { ref } from 'vue'

let title2 = ref()
let rrr = ref()

function showLog() {
    console.log(title2.value)
    console.log(rrr.value)
}

// export default {
//     name: 'App', //组件名字
//     // 注册组件
//     components: {
//         Person
//     }
// }

</script>

<style>
.app {
    background-color: #4fffbb;
    box-shadow: 0 0 10px;
    border-radius: 10px;
    padding: 20px;
}
</style>

person.vue

html 复制代码
<template>
    <div class="person">

        <h1>标签ref属性</h1>
        <h2 ref="title2">需求:转速大于2000时候换挡位,不能超过D6挡位</h2>
        <h2>转速</h2>
        <button @click="showLog">点击输出 ref = title2 的元素</button>

    </div>
</template>

<script lang="ts" setup>
import { ref } from 'vue';

// 标签的ref属性 用于注册模板引用
// 用在dom标签上,获取的是dom节点
// 用在组件上,获取的是组件实例对象

// 创建一个title2的ref,用于存储ref标记的内容
const title2 = ref();
let a = ref(0);
let b = ref(1);
let c = ref(2);
function showLog() {
    console.log(title2.value);
}

// 将ref对象暴漏给父组件
defineExpose({ a, b, c });

</script>

<style scoped>
.person {
    background-color: #ff9e4f;
    box-shadow: 0 0 10px;
    border-radius: 30px;
    padding: 30px;
}

button {
    margin: 0 10px;
    padding: 0 5px;
    box-shadow: 0 0 5px;
    ;
}
</style>
相关推荐
已读不回1431 分钟前
设计模式-工厂模式
前端·算法·代码规范
郭少1 分钟前
🔥 我封装了一个会“思考”的指令!Element-Plus Tooltip 自动检测文本溢出,优雅展示
前端·vue.js·性能优化
谢泽豪2 分钟前
解决 uniapp 修改index.html文件不生效的问题
前端·uni-app
袁煦丞2 分钟前
【黑科技指南】自托管私人导航站Dashy:cpolar内网穿透实验室第476个成功挑战
前端·程序员·远程工作
Nayana3 分钟前
Clean Code JavaScript小记(一)
javascript
郭少4 分钟前
🔥 放弃 vw!我在官网大屏适配中踩了天坑,用 postcss-px-to-viewport-8-plugin 实现了 Rem 终极方案
vue.js·性能优化·nuxt.js
heartmoonq5 分钟前
关于前端监控用户行为导致的报错
前端
已读不回1436 分钟前
告别痛苦的主题切换!用一个插件解决 Tailwind CSS 多主题开发的所有烦恼
前端·架构
咸虾米6 分钟前
微信小程序通过uni.chooseLocation打开地图选择位置,相关设置及可能出现的问题
vue.js·微信小程序
pepedd8646 分钟前
🚀Webpack 从入门到优化,一文全掌握!
前端·webpack·trae