Bu belge yapay zeka tarafından çevrilmiştir. Doğru bilgi için İngilizce sürüme bakın.
JS Block, arayüzler oluşturmak, olayları bağlamak, veri arayüzlerini çağırmak veya üçüncü taraf kütüphaneleri entegre etmek için doğrudan JavaScript betikleri yazmanıza olanak tanıyan son derece esnek bir "özel oluşturma bloğudur". Yerleşik blokların kapsayamadığı kişiselleştirilmiş görselleştirme, geçici denemeler ve hafif genişletme senaryoları için uygundur.
JS Block'un çalışma zamanı bağlamına yaygın yetenekler enjekte edilmiştir ve bunlar doğrudan kullanılabilir:
ctx.element: Bloğun DOM kapsayıcısı (güvenli bir şekilde sarmalanmış ElementProxy); innerHTML, querySelector, addEventListener vb. destekler;ctx.requireAsync(url): URL'ye göre AMD/UMD kütüphanelerini eşzamansız olarak yükler;ctx.importAsync(url): URL'ye göre ESM modüllerini dinamik olarak içe aktarır;ctx.openView: Yapılandırılmış görünümü (açılır pencere/çekmece/sayfa) açar;ctx.useResource(...) + ctx.resource: Verilere kaynak yöntemiyle erişir;ctx.i18n.t() / ctx.t(): Yerleşik uluslararasılaştırma yeteneği;ctx.onRefReady(ctx.ref, cb): Zamanlama sorunlarını önlemek için kapsayıcı hazır olduktan sonra oluşturur;ctx.libs.React / ctx.libs.ReactDOM / ctx.libs.antd / ctx.libs.antdIcons / ctx.libs.dayjs / ctx.libs.lodash / ctx.libs.math / ctx.libs.formula: JSX oluşturma, zaman işleme, veri işlemleri ve matematiksel hesaplamalar için yerleşik React / ReactDOM / Ant Design / Ant Design İkonları / dayjs / lodash / math.js / formula.js gibi genel kütüphaneler. (ctx.React / ctx.ReactDOM / ctx.antd uyumluluk için hala korunmaktadır.)ctx.render(vnode): React öğesini, HTML dizesini veya DOM düğümünü varsayılan kapsayıcı ctx.element içine oluşturur; birden fazla çağrı aynı React Root'u yeniden kullanır ve kapsayıcının mevcut içeriğinin üzerine yazar.
JS Block betik düzenleyicisi; sözdizimi vurgulama, hata ipuçları ve yerleşik kod parçacıklarını (Snippets) destekler. Grafik oluşturma, düğme olaylarını bağlama, harici kütüphaneleri yükleme, React/Vue bileşenlerini oluşturma, zaman çizelgesi, bilgi kartları gibi yaygın örnekleri hızlıca ekleyebilirsiniz.
Snippets: Yerleşik kod parçacıkları listesini açar; arama yapabilir ve seçilen parçacığı imlecin bulunduğu konuma tek tıklamayla ekleyebilirsiniz.Run: Düzenleyicideki kodu doğrudan çalıştırır ve çalışma günlüklerini alttaki Logs paneline aktarır. console.log/info/warn/error görüntülemeyi destekler; hatalar vurgulanır ve ilgili satır/sütuna konumlandırılabilir.
Ayrıca, düzenleyicinin sağ üst köşesinden AI çalışanı "Ön Uç Mühendisi · Nathan"ı doğrudan çağırabilirsiniz. Nathan, mevcut bağlama göre betik yazmanıza veya düzenlemenize yardımcı olur; "Apply to editor" ile tek tıklamayla uygulayıp sonucu görebilirsiniz. Ayrıntılar için bakınız:
ctx.element (ElementProxy) sağlar; yalnızca mevcut bloğu etkiler, sayfanın diğer alanlarına müdahale etmez.window/document/navigator güvenli proxy nesneleri kullanır, yaygın API'ler kullanılabilir ancak riskli davranışlar kısıtlanmıştır.class veya [name=...] nitelik seçicilerini kullanın; birden fazla blok/açılır pencerede yinelenen id'lerin stil veya olay çakışmalarına yol açmasını önlemek için sabit id kullanmaktan kaçının.