motion.tsx
export default defineComponent({
name: 'Motion',
props: {
delay: {
type: Number,
default: 50
}
},
render() {
const { delay, $slots } = this
const El = (
<div
v-motion
initial={{ opacity: 0, y: 100 }}
enter={{ opacity: 1, y: 0, transition: { delay } }}
>
{($slots as any).default()}
</div>
)
return El
}
})