UI Schema
UI Schema adalah protokol yang digunakan NocoBase untuk mendeskripsikan Component front-end, berbasis Formily Schema 2.0, dengan gaya mirip JSON Schema. Di FlowEngine, field uiSchema di registerFlow menggunakan sintaks ini untuk mendefinisikan UI panel konfigurasi.
Penggunaan Dasar
Component Paling Sederhana
Semua tag HTML native dapat dikonversi menjadi penulisan schema:
Setara dengan JSX:
Sub Component
Component children ditulis di properties:
Setara dengan JSX:
Penjelasan Property
type
Tipe node:
name
Nama schema. Nama child node adalah key dari properties:
title
Judul node, biasanya digunakan untuk label field form.
x-component
Nama Component. Dapat berupa tag HTML native, atau Component React yang sudah didaftarkan:
x-component-props
Property Component:
x-decorator
Component wrapper. Kombinasi x-decorator + x-component dapat menempatkan dua Component dalam satu node schema — mengurangi kompleksitas struktur, meningkatkan reusabilitas.
Misalnya dalam skenario form, FormItem adalah decorator:
Setara dengan JSX:
x-display
Status tampilan Component:
x-pattern
Mode interaksi Component field:
Penggunaan dalam registerFlow
Dalam pengembangan plugin, uiSchema terutama digunakan dalam panel konfigurasi registerFlow. Setiap field biasanya dibungkus dengan 'x-decorator': 'FormItem':
v2 kompatibel dengan sintaks uiSchema, namun skenario penggunaan terbatas — terutama digunakan untuk mendeskripsikan UI form di panel konfigurasi Flow. Sebagian besar rendering Component runtime direkomendasikan menggunakan Component Antd langsung.
Cheatsheet Component Umum
Tautan Terkait
- Ikhtisar FlowEngine (Plugin Development) — Penggunaan praktis uiSchema dalam registerFlow
- Definisi FlowDefinition — Penjelasan parameter lengkap registerFlow
- Dokumentasi Formily Schema — Protokol Formily yang menjadi dasar uiSchema

