saatTerpasang
Jalankan sesuatu setelah komponennya terpasang, atau sekarang juga kalau tidak ada komponennya.
Status: belum jalan
Di dalam komponen ini ia memakai onMounted. Dipanggil dari effectScope() lepas — misalnya di dalam uji — ia berjalan seketika, tanpa peringatan, dan tetap tidak pernah berjalan di server.
Jalankan sesuatu setelah komponennya terpasang — atau sekarang juga, kalau memang tidak ada komponennya.
onMounted di luar setup() tidak melakukan apa-apa dan mencetak peringatan. Itu jadi soal karena composable dipanggil dari dua tempat: dari komponen, dan dari effectScope() lepas — termasuk di dalam uji, di mana peringatan itu membanjiri keluaran tanpa menandakan kesalahan apa pun.
Yang dijaga tetap sama di kedua jalur: pekerjaannya tidak pernah berjalan di server. Di dalam komponen itu dijamin onMounted sendiri; di luar komponen, isBrowser yang menjaganya.
Pemasangan
npx shadcn-vue@latest add @kliping/saat-terpasang Perlu @kliping terdaftar di components.json project Anda. Lihat cara menyiapkannya.
Ikut terpasang sendiri: is-browser.
Salin dulu is-browser — masing-masing memuat sumbernya di halamannya sendiri — lalu tempel berkas ini.
import { getCurrentInstance, onMounted } from 'vue'
import { isBrowser } from '@/lib/is-browser'
export function saatTerpasang(fn: () => void) {
if (getCurrentInstance()) {
onMounted(fn)
return
}
if (isBrowser)
fn()
}API
export function saatTerpasang(fn: () => void)