kliping.pro
  • Docs
  • Explore
  • Builder
  • Directory
  • Colors
  • Typeset
Saved
Hooks
  • Getting Started2
  • State7
  • Advanced6
  • Lifecycle16
  • useDebounceEffect
  • useDebounceFn
  • useDeepCompareEffect
  • useDeepCompareLayoutEffect
  • useEffectEvent
  • useEffectWithTarget
  • useInterval
  • useIsHydrated
  • useIsomorphicLayoutEffect
  • useMount
  • useThrottleEffect
  • useThrottleFn
  • useTimeout
  • useUnmount
  • useUpdate
  • useUpdateEffect
  • Browser21
  • Development1
  • Third-Party4
  • Libraries4
  1. Hooks
  2. Lifecycle
  3. useIsHydrated

useIsHydrated

PreviousNext

Apakah halamannya sudah dihidrasi di peramban.

Ini salah satu dari sedikit composable "lifecycle" yang tetap perlu ada di Vue, tidak seperti useMount atau useUpdateEffect yang cuma menamai ulang sesuatu yang sudah bawaan. Sebabnya nyata: dokumentasi Kliping dirender di server, dan HTML yang dihasilkan harus sama persis dengan gambaran pertama di peramban. Menggambar sesuatu yang cuma bisa diketahui di peramban — lebar layar, isi localStorage, waktu setempat — membuat keduanya berbeda, dan Vue membuang lalu menggambar ulang bagiannya.

Polanya:

vue
<button :disabled="!terhidrasi">Salin</button>

onMounted tidak pernah berjalan di server, jadi nilainya false saat dirender di sana dan false juga pada gambaran pertama di peramban. Itulah yang membuat keduanya cocok.

Installation ​

pnpm dlx kliping@latest add use-is-hydrated

Ikut terpasang sendiri: try-on-mounted.

Salin dulu is-browser, try-on-mounted — masing-masing memuat sumbernya di halamannya sendiri — lalu tempel berkas ini.

ts
import { readonly, ref } from 'vue'
import { tryOnMounted } from '@/lib/try-on-mounted'

export function useIsHydrated() {
  const isHydrated = ref(false)

  tryOnMounted(() => {
    isHydrated.value = true
  })

  return readonly(isHydrated)
}

Requirements ​

RequirementValue
ProjectVue 3.5+, alias @ — disiapkan kliping init
Kliping itemstry-on-mounted
Filescomposables/use-is-hydrated.ts

API Reference ​

ts
export function useIsHydrated()

Parameters ​

Tanpa parameter.

Returns ​

Readonly<Ref<boolean, boolean>> — Whether the app has hydrated on the client (false during SSR). Reactive, read-only.

Credits ​

Berasal dari shadcn-hooks (MIT, Copyright (c) 2025 Brendan Dash). Rantai lengkapnya di Credits.

PrevioususeIntervalNext useIsomorphicLayoutEffect

On This Page

InstallationRequirementsAPI ReferenceParametersReturnsCredits

© 2026 Kliping. Free components are open source under the MIT License.

LicenseCreditsRoadmap