perf: useNetwork
parent
1db22482b4
commit
88be3eea10
@ -0,0 +1,21 @@
|
||||
import { ref, onBeforeUnmount } from 'vue'
|
||||
|
||||
const useNetwork = () => {
|
||||
const online = ref(true)
|
||||
|
||||
const updateNetwork = () => {
|
||||
online.value = navigator.onLine
|
||||
}
|
||||
|
||||
window.addEventListener('online', updateNetwork)
|
||||
window.addEventListener('offline', updateNetwork)
|
||||
|
||||
onBeforeUnmount(() => {
|
||||
window.removeEventListener('online', updateNetwork)
|
||||
window.removeEventListener('offline', updateNetwork)
|
||||
})
|
||||
|
||||
return { online }
|
||||
}
|
||||
|
||||
export { useNetwork }
|
||||
@ -0,0 +1,12 @@
|
||||
<script setup lang="ts">
|
||||
import { ContentWrap } from '@/components/ContentWrap'
|
||||
import { useNetwork } from '@/hooks/web/useNetwork'
|
||||
|
||||
const { online } = useNetwork()
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<ContentWrap title="useNetwork">
|
||||
当前网络状态: <code>{{ online ? '已连接' : '已断开' }}</code>
|
||||
</ContentWrap>
|
||||
</template>
|
||||
Loading…
Reference in New Issue