logologo
Start
Manual
Utveckling
Plugins
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Start
Manual
Utveckling
Plugins
API
logologo

Snabbstart

Översikt: Plugin-utveckling
Skriv ditt första plugin
Projektets katalogstruktur

Server-side-utveckling

Översikt
Plugin
Collections (datatabeller)
Database (databasåtgärder)
DataSourceManager (datakällshantering)
ResourceManager (resurshantering)
ACL (behörighetskontroll)
Middleware
Cache
Event (händelser)
Context (request-kontext)
Migration (uppgraderingsskript)
Logger (loggar)
I18n (internationalisering)
Command (kommandorad)
CronJobManager (schemalagda jobb)
Test (tester)

Klient-side-utveckling

Översikt
Plugin
Context (kontext)
Router (routing)
ACL (behörighetskontroll)
DataSourceManager (datakällshantering)
Resource (resurser)
Request (förfrågningar)
Stilar & teman
Logger (loggar)
I18n (internationalisering)
Test (tester)

Övrigt

Plugin-uppgraderingsguide
Språklista
Beroendehantering
Bygga
Previous PageLogger (loggar)
Next PageTest (tester)
TIP

Detta dokument har översatts av AI. För eventuella felaktigheter, se den engelska versionen

#I18n Internationalisering

NocoBase-plugins stöder flerspråkig internationalisering (i18n) för både frontend och backend. Med en enhetlig mekanism kan ni enkelt implementera flerspråkigt innehåll i era plugins.

#Hantering av flerspråkiga filer

Plugins flerspråkiga filer lagras enhetligt i katalogen src/locale. Vi rekommenderar att ni namnger dem efter språk, till exempel:

|- /plugin-hello
  |- /src
    |- /locale
      |- en-US.json   # Engelska
      |- zh-CN.json   # Kinesiska

Varje språkfil exporterar ett JSON-objekt som innehåller alla översättningsposter för det språket, till exempel:

// zh-CN.json
{
  "Hello": "你好",
  "World": "世界",
  "Enter your name": "请输入你的名字",
  "Your name is {{name}}": "你的名字是 {{name}}"
}
// en-US.json
{
  "Hello": "Hello",
  "World": "World",
  "Enter your name": "Enter your name",
  "Your name is {{name}}": "Your name is {{name}}"
}

När ni lägger till språkfiler för första gången måste ni starta om applikationen för att de ska träda i kraft. Ni kan verifiera att översättningsposterna har trätt i kraft via API:et:
http://localhost:13000/api/app:getLang?locale=zh-CN

#i18n-relaterade API:er

#ctx.i18n

#ctx.t(text, options)

#plugin.t()

#useT()

#tExpr(text)

#useTranslation(ns)

#withTranslation(ns)