Skip to content

useLockPageScroll

useLockPageScroll(options?): Object

设置页面是否可滚动

参数

NameType
options?Object
options.contextundefined | ComputedRef<string>

返回值

Object

NameType
pageMetaStyleComputedRef<any>
pageScrollLockedComputedRef<boolean>
setPageScrollLocked(visible: boolean) => void

pageMetaStyle: ComputedRef<any>

-


pageScrollLocked: ComputedRef<boolean>

-


setPageScrollLocked: (visible: boolean) => void

-


示例

ts
// page.vue
<page-meta :page-style="pageMetaStyle"></page-meta>

const {pageMetaStyle} = useLockPageScroll()
// 如果页面有多个 tab 时可以区分上下文,使每个 tab 的滚动锁定状态独立
const {pageScrollLocked, pageMetaStyle} = useLockPageScroll({
  context: computed(() => `tab-${current.value}`),
})

// modal-a.vue
const {setPageScrollLocked} = useLockPageScroll()

// 当打开弹窗时
setPageScrollLocked(true)
// 当关闭弹窗时
setPageScrollLocked(false)

源码

use-lock-page-scroll.js