mirror of
https://github.com/ArthurDanjou/ui.git
synced 2026-01-14 20:19:34 +01:00
39 lines
888 B
Vue
39 lines
888 B
Vue
<script setup lang="ts">
|
|
import type { StepperItem } from '@nuxt/ui'
|
|
import { onMounted, ref } from 'vue'
|
|
|
|
const items: StepperItem[] = [
|
|
{
|
|
title: 'Address',
|
|
description: 'Add your address here',
|
|
icon: 'i-lucide-house'
|
|
}, {
|
|
title: 'Shipping',
|
|
description: 'Set your preferred shipping method',
|
|
icon: 'i-lucide-truck'
|
|
}, {
|
|
title: 'Checkout',
|
|
description: 'Confirm your order'
|
|
}
|
|
]
|
|
|
|
const active = ref(0)
|
|
|
|
// Note: This is for demonstration purposes only. Don't do this at home.
|
|
onMounted(() => {
|
|
setInterval(() => {
|
|
active.value = (active.value + 1) % items.length
|
|
}, 2000)
|
|
})
|
|
</script>
|
|
|
|
<template>
|
|
<UStepper v-model="active" :items="items" class="w-full">
|
|
<template #content="{ item }">
|
|
<Placeholder class="aspect-video">
|
|
This is the {{ item?.title }} step.
|
|
</Placeholder>
|
|
</template>
|
|
</UStepper>
|
|
</template>
|