იგივეა გამოყენების ეფექტი, რაც კომპონენტიdidmount?

Სარჩევი:

იგივეა გამოყენების ეფექტი, რაც კომპონენტიdidmount?
იგივეა გამოყენების ეფექტი, რაც კომპონენტიdidmount?

ვიდეო: იგივეა გამოყენების ეფექტი, რაც კომპონენტიdidmount?

ვიდეო: იგივეა გამოყენების ეფექტი, რაც კომპონენტიdidmount?
ვიდეო: какая разница между useLayoutEffect, componentDidMount и useEffect? 2024, დეკემბერი
Anonim

კომპონენტიDidMount-ის ექვივალენტი კაკვებში არის useEffect ფუნქცია. UseEffect-ზე გადაცემული ფუნქციები შესრულებულია ყველა კომპონენტის რენდერზე, თუ არ გადასცემთ მას მეორე არგუმენტს.

რისთვის არის useEffect?

რას აკეთებს useEffect? ამ Hook-ის გამოყენებით, თქვენ ეუბნებით React-ს, რომ თქვენმა კომპონენტმა უნდა გააკეთოს რამე რენდერის შემდეგ. React დაიმახსოვრებს თქვენ მიერ გავლილ ფუნქციას (ჩვენ მას ჩვენ ვუწოდებთ ჩვენს „ეფექტს“) და მოგვიანებით დაურეკავს მას DOM განახლებების შესრულების შემდეგ.

არის componentDidMount React hook?

useEffect არის React hook, სადაც შეგიძლიათ გამოიყენოთ გვერდითი მოვლენები, მაგალითად, სერვერიდან მონაცემების მიღება. პირველი არგუმენტი არის გამოძახება, რომელიც გააქტიურდება ბრაუზერის განლაგებისა და შეღებვის შემდეგ.

რატომ არ ჰქვია useEffect?

ამის მიზეზი არის ის, რომ api ზარი ასინქრონულია, ის არ ავსებს მდგომარეობას დაუყოვნებლივ, ამიტომ რენდერი ხდება ჯერ და ცდილობს წაიკითხოს. მიმდინარე ამინდის საწყისი მდგომარეობიდან null. გამოსავალი: თქვენი რენდერის მეთოდით, დარწმუნდით, რომ არ წაიკითხეთ ამინდი.

useEffect ყოველთვის მუშაობს Mount-ზე?

მნიშვნელოვანია: useEffect Hook ყოველთვის იმუშავებს მონტაჟზე, მიუხედავად -ისა, თუ რაიმე არის მის დამოკიდებულების მასივში. ჩვენ, ალბათ, არ გვსურს რეალურად გავატაროთ ეს ეფექტი ჩვენს მონაცემებზე, როდესაც ის განუსაზღვრელია (როგორც ეს იქნება თავდაპირველ რენდერზე), არამედ გვსურს დაველოდოთ, სანამ ის შევსდება API ზარიდან.

გირჩევთ: