Skip to content

લાઇફસાઇકલ હૂક્સ (Lifecycle Hooks)

દરેક Vue કમ્પોનન્ટ ઇન્સ્ટન્સ જ્યારે બનાવવામાં આવે છે ત્યારે તે પ્રારંભિક પગલાઓની શ્રેણીમાંથી પસાર થાય છે - ઉદાહરણ તરીકે, તેને ડેટા ઓબ્ઝર્વેશન સેટ કરવાની જરૂર છે, ટેમ્પલેટ કમ્પાઇલ કરવાની જરૂર છે, DOM માં ઇન્સ્ટન્સને માઉન્ટ કરવાની જરૂર છે અને ડેટા બદલાય ત્યારે DOM અપડેટ કરવાની જરૂર છે. રસ્તામાં, તે લાઇફસાઇકલ હૂક્સ (lifecycle hooks) નામના ફંક્શન્સ પણ ચલાવે છે, જે યુઝર્સને ચોક્કસ તબક્કાઓ પર પોતાનો કોડ ઉમેરવાની તક આપે છે.

લાઇફસાઇકલ હૂક્સ રજીસ્ટર કરવા

ઉદાહરણ તરીકે, onMountedmounted હૂકનો ઉપયોગ ઘટકે પ્રારંભિક રેન્ડરિંગ પૂર્ણ કર્યા પછી અને DOM નોડ્સ બનાવ્યા પછી કોડ ચલાવવા માટે થઈ શકે છે:

vue
<script setup>
import { onMounted } from 'vue'

onMounted(() => {
  console.log(`કમ્પોનન્ટ હવે માઉન્ટ થયેલ છે.`)
})
</script>
js
export default {
  mounted() {
    console.log(`કમ્પોનન્ટ હવે માઉન્ટ થયેલ છે.`)
  }
}

અન્ય હૂક્સ પણ છે જે ઇન્સ્ટન્સની લાઇફસાઇકલના વિવિધ તબક્કાઓ પર કોલ કરવામાં આવશે, જેમાંથી સૌથી સામાન્ય રીતે ઉપયોગમાં લેવાતા હૂક્સ onMounted, onUpdated, અને onUnmounted છે.mounted, updated, અને unmounted છે.

બધા લાઇફસાઇકલ હૂક્સને તેમના this કોન્ટેક્સ્ટ સાથે કૉલ કરવામાં આવે છે જે તેને બોલાવતા વર્તમાન એક્ટિવ ઇન્સ્ટન્સ તરફ નિર્દેશ કરે છે. નોંધ કરો કે આનો અર્થ એ છે કે તમારે લાઇફસાઇકલ હૂક્સ જાહેર કરતી વખતે એરો ફંક્શન્સનો ઉપયોગ કરવાનું ટાળવું જોઈએ, કારણ કે જો તમે આવું કરશો તો તમે this દ્વારા કમ્પોનન્ટ ઇન્સ્ટન્સને એક્સેસ કરી શકશો નહીં.

જ્યારે onMounted ને કૉલ કરવામાં આવે છે, ત્યારે Vue આપમેળે નોંધાયેલ (registered) કોલબેક ફંક્શનને વર્તમાન એક્ટિવ કમ્પોનન્ટ ઇન્સ્ટન્સ સાથે જોડે છે. આ માટે આ હૂક્સ કમ્પોનન્ટ સેટઅપ દરમિયાન સિંક્રનસ (synchronously) રીતે રજીસ્ટર થયેલા હોવા જરૂરી છે. ઉદાહરણ તરીકે, આ ન કરો:

js
setTimeout(() => {
  onMounted(() => {
    // આ કામ કરશે નહીં.
  })
}, 100)

એ નોંધવું જોઈએ કે આનો અર્થ એ નથી કે કોલ લેક્સિકલી (lexically) રીતે setup() અથવા <script setup> ની અંદર હોવો જોઈએ. onMounted() ને બાહ્ય ફંક્શનમાં કૉલ કરી શકાય છે જ્યાં સુધી કોલ સ્ટેક (call stack) સિંક્રનસ હોય અને setup() ની અંદરથી ઉદ્ભવતો હોય.

લાઇફસાઇકલ ડાયાગ્રામ (Lifecycle Diagram)

નીચે ઇન્સ્ટન્સ લાઇફસાઇકલ માટેનો ડાયાગ્રામ છે. અત્યારે જે કંઈ થઈ રહ્યું છે તે બધું તમારે સંપૂર્ણપણે સમજવાની જરૂર નથી, પરંતુ જેમ જેમ તમે શીખશો અને વધુ બનાવશો તેમ તેમ તે એક ઉપયોગી સંદર્ભ બનશે.

કમ્પોનન્ટ લાઇફસાઇકલ ડાયાગ્રામ

તમામ લાઇફસાઇકલ હૂક્સ અને તેમના સંબંધિત ઉપયોગના કિસ્સાઓ વિશેની વિગતો માટે લાઇફસાઇકલ હૂક્સ API સંદર્ભલાઇફસાઇકલ હૂક્સ API સંદર્ભ નો સંપર્ક કરો.

લાઇફસાઇકલ હૂક્સ (Lifecycle Hooks) has loaded