返回

javascript-如何在 <script setup> Vue 中访问 this.$refs

发布时间:2022-05-29 03:31:18 311
# 前端

我正在尝试复制它,仅使用<script setup>没有this关键字的标签。

模板(来自我试图复制的代码)

<swiper ref="swiper">

    <swiper-slide></swiper-slide>

    <swiper-slide></swiper-slide>

</swiper>

<a class="swiper-navigation is-previous" @click="swiper.slidePrev()"></a>

<a class="swiper-navigation is-next" @click="swiper.slideNext()"></a>

脚本(来自我试图复制的代码)

computed: {

    swiper() {

        return this.$refs.swiper.swiper;

    }

}

尝试使用getCurrentInstance()但由于某种原因getCurrentInstance().refs返回空对象{},即使我这样做时它就在那里console.log(getCurrentInstance())。

我的<script setup>组件

<script setup lang="ts">

import { Swiper, SwiperSlide } from 'swiper/vue';

const swiper = // ???

const handleNextSlide = () => swiper.slideNext()

const handlePrevSlide = () => swiper.slidePrev()

</script>

<template>

<div>

    <button @click="handlePrevSlide()">Prev</button>

    <button @click="handleNextSlide()">Next</button>

    <Swiper ref="swiper">

        <SwiperSlide>1</SwiperSlide>

        <SwiperSlide>2</SwiperSlide>

        <SwiperSlide>3</SwiperSlide>

        <SwiperSlide>4</SwiperSlide>

        <SwiperSlide>5</SwiperSlide>

    </Swiper>

</div>

</template>

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(1)
按点赞数排序
用户头像