2.2 Elements -- useDocumentVisibility

2.2 Elements – useDocumentVisibility

https://vueuse.org/core/useDocumentVisibility/

作用

响应式的跟踪网页的可见状态。监听visibilitychange事件,结果为visiblehidden

https://developer.mozilla.org/en-US/docs/Web/API/Document/visibilityState

官方示例

import { useDocumentVisibility } from '@vueuse/core'

const visibility = useDocumentVisibility()

无渲染组件使用如下

<UseDocumentVisibility v-slot="{ visibility }">
  Document Visibility: {{ visibility }}
</UseDocumentVisibility>

源码分析

export function useDocumentVisibility({ document = defaultDocument }: ConfigurableDocument = {}): Ref<DocumentVisibilityState> {
  
  if (!document)
    return ref('visible')

  const visibility = ref(document.visibilityState)

  useEventListener(document, 'visibilitychange', () => {
    visibility.value = document.visibilityState
  })

  return visibility

⚠️:结果为visiblehidden

代码没有需要解释的地方,但是个人意见,从函数名来看,这个函数直接返回truefalse会更加直接易懂。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值