Dokumen ini diterjemahkan oleh AI. Untuk informasi yang akurat, silakan merujuk ke versi bahasa Inggris.
Sistem konteks alur kerja NocoBase dibagi menjadi tiga lapisan, masing-masing sesuai dengan cakupan yang berbeda. Penggunaan yang tepat dapat mewujudkan berbagi dan isolasi layanan, konfigurasi, dan data yang fleksibel, serta meningkatkan pemeliharaan dan skalabilitas bisnis.
mode: 'runtime' | 'settings', yang masing-masing sesuai dengan status berjalan dan status konfigurasi.Semua FlowEngineContext (Konteks Global), FlowModelContext (Konteks Model), FlowRuntimeContext (Konteks Runtime Alur Kerja), dll., adalah subkelas atau instansi dari FlowContext.
FlowModelContext melalui mekanisme delegasi (delegate) dapat mengakses properti dan metode FlowEngineContext, mewujudkan berbagi kemampuan global.FlowModelContext dari sub-model melalui mekanisme delegasi (delegate) dapat mengakses konteks model induk (hubungan sinkron), mendukung penimpaan nama yang sama.FlowRuntimeContext selalu mengakses FlowModelContext yang sesuai melalui mekanisme delegasi (delegate), tetapi tidak akan mengirimkan kembali ke atas.FlowRuntimeContext mendukung dua mode, dibedakan melalui parameter mode:
mode: 'runtime' (Status berjalan): Digunakan untuk tahap eksekusi aktual alur kerja, properti dan metode mengembalikan data nyata. Contoh:
mode: 'settings' (Status konfigurasi): Digunakan untuk tahap desain dan konfigurasi alur kerja, akses properti mengembalikan string templat variabel, memudahkan ekspresi dan pemilihan variabel. Contoh:
Desain mode ganda ini tidak hanya menjamin ketersediaan data saat runtime, tetapi juga memudahkan referensi variabel dan pembuatan ekspresi saat konfigurasi, meningkatkan fleksibilitas dan kemudahan penggunaan alur kerja.
Dalam skenario tertentu (misalnya pengeditan kode RunJS pada JS*Model, AI coding), "pemanggil" perlu memahami hal-hal berikut tanpa mengeksekusi kode:
ctx saat ini (dokumentasi API, parameter, contoh, tautan dokumentasi, dll.)await ctx.getApiInfos(options?) (Informasi API Statis)await ctx.getVarInfos(options?) (Informasi Struktur Variabel)defineProperty(...).meta (termasuk meta factory)path dan kontrol kedalaman maxDepthParameter umum:
maxDepth: Tingkat perluasan maksimum (default 3)path: string | string[]: Pemotongan, hanya mengeluarkan sub-pohon jalur yang ditentukanawait ctx.getEnvInfos() (Snapshot Lingkungan Runtime)Struktur simpul (disederhanakan):