ctx.render()
Merender elemen React, string HTML, atau node DOM ke container tertentu. Saat tidak meneruskan container, secara default merender ke ctx.element, dan otomatis mewarisi ConfigProvider, tema, dll. dari aplikasi.
Skenario Penggunaan
Perhatian:
ctx.render()membutuhkan container render. Jika tidak meneruskancontainerdanctx.elementtidak ada (seperti skenario logika murni tanpa UI), akan melempar error.
Definisi Tipe
Return Value:
- Saat merender elemen React: mengembalikan
ReactDOMClient.Root, untuk memudahkan memanggilroot.render()untuk update - Saat merender string HTML atau node DOM: mengembalikan
null
Penjelasan Tipe vnode
Contoh
Render Elemen React (JSX)
Render String HTML
Render Node DOM
Menentukan Container Kustom
Pemanggilan Beberapa Kali Akan Mengganti Konten
Hal yang Perlu Diperhatikan
- Pemanggilan beberapa kali akan mengganti: setiap
ctx.render()akan mengganti konten yang sudah ada di container, tidak akan menambahkan. - Keamanan string HTML: HTML yang diteruskan akan dibersihkan oleh DOMPurify, mengurangi risiko XSS, tetapi tetap disarankan untuk menghindari menggabungkan input pengguna yang tidak terpercaya.
- Jangan langsung mengoperasikan ctx.element:
ctx.element.innerHTMLsudah deprecated, harus menggunakanctx.render()secara seragam. - Saat tidak ada container perlu meneruskan container: pada skenario di mana
ctx.elementadalahundefined(seperti dalam modul yang dimuat olehctx.importAsync), perlu meneruskancontainersecara eksplisit.
Terkait
- ctx.element - Container render default,
ctx.render()digunakan saat tidak meneruskan container - ctx.libs - Library bawaan seperti React, antd, untuk render JSX
- ctx.importAsync() - Memuat React/library komponen eksternal sesuai kebutuhan kemudian digunakan dengan
ctx.render()

