1
0
mirror of https://github.com/elk-zone/elk synced 2024-12-11 21:28:06 +09:00
elk/components/common/CommonScrollIntoView.vue

18 lines
364 B
Vue
Raw Normal View History

<script setup lang="ts">
const { as = 'div', active } = defineProps<{ as: any; active: boolean }>()
const el = ref()
watch(() => active, (active) => {
const _el = unrefElement(el)
if (active && _el)
_el.scrollIntoView({ block: 'nearest', inline: 'start' })
})
</script>
<template>
<component :is="as" ref="el">
<slot />
</component>
</template>