Objek global NXUI dan NX
Di React, NXUI adalah objek utama runtime NexaJS, dan NX adalah alias pendek
yang menunjuk objek yang sama. Keduanya disinkronkan dari konfigurasi endpoint saat aplikasi berjalan.
import { NXUI, NX } from "NexaJS";
// Keduanya setara (NX alias dari NXUI)
const apiA = await NXUI.Storage().example().news({ news: 1 });
const apiB = await NX.Storage().example().news({ news: 1 });
// Query builder SQL (alias model/query)
const q2 = await NXUI.Storage().query("news").select("*").get();NXUI.Storage()untuk controller package, models, dan query SQL.NXdipakai jika butuh penulisan lebih singkat, perilaku tetap sama.- Gunakan import dari
"NexaJS", tidak perlu aksesglobalThismanual.
Tabrakan nama di template exsampel
File exsampel/Storage.js mengimpor Storage dari ../package dan memakai
Storage.setItem — itu pola key–value, setara dengan memetakan ke
AsyncStorage dari NexaJS (atau re-export internal template Anda), bukan klien HTTP.
Query model (SQL builder)
Bagian ini berbeda dari models(). Jalur query model dipakai untuk menyusun SQL
dengan query builder, lalu dikirim sebagai payload sql + type.
// Query builder SQL -> payload: { sql, type }
const q2 = await NXUI.Storage().query("news").select("*").get(); // alias model()Storage package (controller route)
Jalur ini dipakai untuk memanggil controller dinamis melalui NexaStores. Pola umumnya:
NXUI.Storage().package("namaPaket").namaMethod(payload) atau shortcut
NXUI.Storage().example().news(payload).
const viaPackage = await NXUI.Storage().package("example").news({ news: 1 });
const viaShortcut = await NXUI.Storage().example().news({ news: 1 });Models (method model PHP)
Jalur models() dipakai untuk memanggil method pada class model PHP secara langsung
(payload model + method + params), bukan menyusun SQL.
// Method model PHP -> payload: { model, method, params }
const m1 = await NXUI.Storage().models("News").data("demo");
const m2 = await NXUI.Storage().models("User").byAvatar(1);models(): panggil method model PHP.model()/query(): query builder SQL.- Jika backend meminta argumen string, kirim string (mis.
"demo"), bukan object.
Dedupe GET & cache singkat di NexaFetch
Layer NexaFetch (React) sekarang mendeduplikasi request GET yang sama dan menyimpan
cache hasil singkat (default sekitar 1.5 detik) agar request berulang tidak selalu menembak backend.
Setelah post/put/patch/delete, cache GET terkait
otomatis di-invalidasi.