【Ionic×Composition API에서 ion-Slides를 호출하는 방법
29999 단어 Vue.jsComposition APIVue 3Ionictech
결론만 알고 싶은 사람을 위해서는 먼저 코드 전체를 위에 놓아라.
아래 코드만 잘 모르시는 분들은 계속 읽어주세요.
결론
<template>
<ion-page>
<ion-content :fullscreen="true">
<button @click="nextSlide()">次のページ</button>
<button @click="prevSlide()">前のページ</button>
<button @click="slideTo(2)">3ページ目</button>
<ion-slides :options="slideOpts" ref="slideRef">
<ion-slide>
<h1>Slide 1</h1>
</ion-slide>
<ion-slide>
<h1>Slide 2</h1>
</ion-slide>
<ion-slide>
<h1>Slide 3</h1>
</ion-slide>
</ion-slides>
</ion-content>
</ion-page>
</template>
<script lang="ts">
import { ref } from 'vue';
import { IonPage, IonContent, IonSlides, IonSlide } from '@ionic/vue';
export default {
components: {
IonContent,
IonPage,
IonSlides,
IonSlide,
},
setup() {
const slideRef = ref<any>(null);
const nextSlide = async () => {
const s = await slideRef.value.$el.getSwiper();
await s.slideNext();
};
const prevSlide = async () => {
const s = await slideRef.value.$el.getSwiper();
await s.slidePrev();
};
const slideTo = async (index: number) => {
const s = await slideRef.value.$el.getSwiper();
await s.slideTo(index);
};
return {
slideRef,
nextSlide,
prevSlide,
slideTo,
};
},
};
</script>
해설
1. ion-slides의ref 설정
ion slides 참조를 위해 ref 제작.
<template>
<ion-page>
<ion-content :fullscreen="true">
<ion-slides :options="slideOpts" ref="slideRef">
<ion-slide>
<h1>Slide 1</h1>
</ion-slide>
<ion-slide>
<h1>Slide 2</h1>
</ion-slide>
<ion-slide>
<h1>Slide 3</h1>
</ion-slide>
</ion-slides>
</ion-content>
</ion-page>
</template>
<script lang="ts">
import { ref } from 'vue';
import { IonPage, IonContent, IonSlides, IonSlide } from '@ionic/vue';
export default {
components: {
IonContent,
IonPage,
IonSlides,
IonSlide,
},
setup() {
const slideRef = ref<any>(null);
return {
slideRef,
};
},
};
</script>
2. 페이지 보내기 버튼과 함수 설치
여기.에서 정의한 방법을 사용하려면 다음과 같은 절차
getSwiper()
에서 swiper 실례를 얻어야 한다.const s = await slideRef.value.$el.getSwiper();
상술한 실례에 대해 각 방법을 집행한다.<template>
<ion-page>
<ion-content :fullscreen="true">
+ <button @click="nextSlide()">次のページ</button>
+ <button @click="prevSlide()">前のページ</button>
+ <button @click="slideTo(2)">3ページ目</button>
<ion-slides :options="slideOpts" ref="slideRef">
<ion-slide>
<h1>Slide 1</h1>
</ion-slide>
<ion-slide>
<h1>Slide 2</h1>
</ion-slide>
<ion-slide>
<h1>Slide 3</h1>
</ion-slide>
</ion-slides>
</ion-content>
</ion-page>
</template>
<script lang="ts">
import { ref } from 'vue';
import { IonPage, IonContent, IonSlides, IonSlide } from '@ionic/vue';
export default {
components: {
IonContent,
IonPage,
IonSlides,
IonSlide,
},
setup() {
const slideRef = ref<any>(null);
+ const nextSlide = async () => {
+ const s = await slideRef.value.$el.getSwiper();
+ await s.slideNext();
+ };
+
+ const prevSlide = async () => {
+ const s = await slideRef.value.$el.getSwiper();
+ await s.slidePrev();
+ };
+
+ const slideTo = async (index: number) => {
+ const s = await slideRef.value.$el.getSwiper();
+ await s.slideTo(index);
+ };
return {
slideRef,
};
},
};
</script>
이렇게 하면ion slides 방법을 사용할 수 있습니다.
Reference
이 문제에 관하여(【Ionic×Composition API에서 ion-Slides를 호출하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/tentel/articles/635facd36970c8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)