refactor: use nuxt compatiable 4 folder
This commit is contained in:
24
app/composables/helper.ts
Normal file
24
app/composables/helper.ts
Normal file
@@ -0,0 +1,24 @@
|
||||
import type { MaybeComputedElementRef } from '@vueuse/core'
|
||||
import { isClient, useElementBounding } from '@vueuse/core'
|
||||
|
||||
/**
|
||||
* trigger show invisible element
|
||||
* @param target
|
||||
*/
|
||||
export function useInvisibleElement(target: MaybeComputedElementRef<HTMLElement>) {
|
||||
const { top } = useElementBounding(target)
|
||||
|
||||
const isVisible = computed(() => {
|
||||
return isClient ? window.scrollY < top.value : true
|
||||
})
|
||||
|
||||
const show = () => {
|
||||
if (isClient)
|
||||
window.scrollTo(0, top.value)
|
||||
}
|
||||
|
||||
return {
|
||||
isVisible,
|
||||
show,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user