Skip to content

Commit c6567b0

Browse files
committed
docs: fix typos and improve readability
1 parent aa5b17c commit c6567b0

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/content/learn/reusing-logic-with-custom-hooks.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -446,7 +446,7 @@ Ketika Anda perlu membagikan state itu sendiri antara beberapa komponen, [angkat
446446
447447
## Mengirimkan nilai reaktif antara Hooks {/*passing-reactive-values-between-hooks*/}
448448
449-
Kode di dalam Custom Hooks akan dijalankan kembali setiap kali komponen Anda dirender ulang. Oleh karena itu, seperti halnya komponen, Custom Hooks [harus bersifat murni.](/learn/keeping-components-pure) Bayangkan kode Custom Hooks sebagai bagian dari badan komponen Anda!
449+
Kode di dalam kustom Hooks akan dijalankan kembali setiap kali komponen Anda di-*render* ulang. Oleh karena itu, seperti halnya komponen, Custom Hooks [harus bersifat murni.](/learn/keeping-components-pure) Bayangkan kode kustom Hooks sebagai bagian dari badan komponen Anda!
450450
451451
Karena Custom Hooks di-render ulang bersama komponen Anda, mereka selalu menerima prop dan state terbaru. Untuk mengetahui apa artinya, pertimbangkan contoh ruang obrolan ini. Ubah URL server atau ruang obrolannya:
452452
@@ -1877,7 +1877,7 @@ Terkadang, Anda bahkan tidak perlu menggunakan Hook!
18771877
- Custom Hook harus diberi nama yang dimulai dengan `use` diikuti oleh huruf kapital.
18781878
- Custom Hook hanya berbagi logika yang berhubungan dengan state, bukan state itu sendiri.
18791879
- Anda dapat meneruskan nilai reaktif dari satu Hook ke Hook lainnya, dan nilai tersebut tetap up-to-date.
1880-
- Semua Hook dijalankan ulang setiap kali komponen Anda dirender ulang.
1880+
- Semua Hook dijalankan ulang setiap kali komponen Anda di-*render* ulang.
18811881
- Kode dari custom Hook Anda harus bersifat murni, seperti kode komponen Anda.
18821882
- Bungkus event handler yang diterima oleh custom Hook menjadi Effect Events.
18831883
- Jangan membuat Custom Hook seperti `useMount`. Jaga agar tujuan mereka tetap spesifik.
@@ -2251,7 +2251,7 @@ export function useInterval(onTick, delay) {
22512251
22522252
Di dalam `useInterval`, bungkus callback tick menjadi sebuah Event Effect, seperti yang Anda lakukan [sebelumnya di halaman ini.](/learn/reusing-logic-with-custom-hooks#passing-event-handlers-to-custom-hooks)
22532253
2254-
Ini akan memungkinkan Anda menghilangkan `onTick` dari dependensi Effect Anda. Effect tidak akan disinkronkan setiap kali komponen dirender ulang, sehingga interval perubahan warna latar belakang halaman tidak akan diatur ulang setiap detik sebelum sempat aktif.
2254+
Ini akan memungkinkan Anda menghilangkan `onTick` dari *dependensi* Effect Anda. Effect tidak akan disinkronkan setiap kali komponen di-*render* ulang, sehingga interval perubahan warna latar belakang halaman tidak akan diatur ulang setiap detik sebelum sempat aktif.
22552255
22562256
Dengan perubahan ini, kedua interval akan berfungsi seperti yang diharapkan dan tidak saling mengganggu:
22572257
@@ -2324,7 +2324,7 @@ export function useInterval(callback, delay) {
23242324
23252325
Dalam contoh ini, Hook `usePointerPosition()` melacak posisi pointer saat ini. Coba gerakkan kursor atau jari Anda ke area pratinjau dan lihat titik merah mengikuti gerakan Anda. Posisinya disimpan dalam variabel `pos1`.
23262326
2327-
Faktanya, ada lima (!) titik merah yang berbeda yang dirender. Anda tidak melihat semuanya karena saat ini mereka semua muncul di posisi yang sama. Inilah yang perlu Anda perbaiki. Yang ingin Anda implementasikan adalah gerakan "bergiliran": setiap titik harus "mengikuti" jalur titik sebelumnya. Misalnya, jika Anda memindahkan kursor dengan cepat, titik pertama harus segera mengikuti dengan segera, titik kedua harus mengikuti titik pertama dengan penundaan kecil, titik ketiga harus mengikuti titik kedua, dan seterusnya.
2327+
Faktanya, ada lima (!) titik merah yang berbeda yang di-*render*. Anda tidak melihat semuanya karena saat ini mereka semua muncul di posisi yang sama. Inilah yang perlu Anda perbaiki. Yang ingin Anda implementasikan adalah gerakan "bergiliran": setiap titik harus "mengikuti" jalur titik sebelumnya. Misalnya, jika Anda memindahkan kursor dengan cepat, titik pertama harus segera mengikuti dengan segera, titik kedua harus mengikuti titik pertama dengan penundaan kecil, titik ketiga harus mengikuti titik kedua, dan seterusnya.
23282328
23292329
Anda perlu mengimplementasikan custom Hook `useDelayedValue`. Implementasi saat ini mengembalikan `value` yang diberikan kepadanya. Sebagai gantinya, Anda ingin mengembalikan nilai dari `delay` milidetik yang lalu. Anda mungkin memerlukan beberapa state dan sebuah Effect untuk melakukannya.
23302330

0 commit comments

Comments
 (0)