logologo
Démarrer
Manuel
Développement
Plugins
API
Accueil
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
Démarrer
Manuel
Développement
Plugins
API
Accueil
logologo
Présentation de RunJS
Importation de modules
Rendu dans le conteneur

Variables globales

window
document
navigator

ctx

ctx.blockModel
ctx.collection
ctx.collectionField
ctx.dataSource
ctx.dataSourceManager
ctx.element
ctx.exit()
ctx.exitAll()
ctx.filterManager
ctx.form
ctx.getModel()
ctx.getValue()
ctx.getVar()
ctx.i18n
ctx.importAsync()
ctx.initResource()
ctx.libs
ctx.location
ctx.logger
ctx.makeResource()
ctx.message
ctx.modal
ctx.model
ctx.notification
ctx.off()
ctx.on()
ctx.openView()
ctx.render()
ctx.request()
ctx.requireAsync()
ctx.resource
ctx.route
ctx.router
ctx.setValue()
ctx.sql
ctx.t()
ctx.view
Previous Pagectx.getVar()
Next Pagectx.importAsync()
Avis de traduction IA

Ce document a été traduit par IA. Pour des informations précises, veuillez consulter la version anglaise.

#ctx.i18n

L'instance i18n du contexte actuel, utilisée pour lire ou changer de langue. Utilisez ctx.t() pour traduire du texte ; n'utilisez pas ctx.i18n.t.

#Scénarios d'utilisation

Tous les environnements d'exécution RunJS peuvent utiliser ctx.i18n (par exemple, JSBlock, JSField, JSItem, JSColumn, flux de travail, règles d'interactivité, etc.).

#Définition du type

interface i18n: {
  language: string;
  changeLanguage(lng: string): Promise<any>;
}

#Propriétés courantes

PropriétéTypeDescription
languagestringLe code de la langue actuellement active (par exemple, en-US, zh-CN)

#Méthodes courantes

#changeLanguage(lng)

Change la langue actuelle.

ParamètreTypeDescription
lngstringCode de la langue cible (par exemple, 'en-US', 'zh-CN')

Valeur de retour : Promise<any>, se résout une fois le changement de langue terminé.

#Exemples

#Lire la langue actuelle

const lang = ctx.i18n.language;
// 'zh-CN' | 'en-US' | ...
if (lang.startsWith('zh')) {
  ctx.render(ctx.t('Interface en chinois'));
} else {
  ctx.render(ctx.t('English UI'));
}

#Changer de langue

// Passer à l'anglais
await ctx.i18n.changeLanguage('en-US');

// Passer au chinois
await ctx.i18n.changeLanguage('zh-CN');

#Bouton de changement de langue

const { Button } = ctx.libs.antd;
const isZh = ctx.i18n.language.startsWith('zh');
ctx.render(
  <Button onClick={async () => {
    await ctx.i18n.changeLanguage(isZh ? 'en-US' : 'zh-CN');
  }}>
    {ctx.t(isZh ? 'Switch to English' : 'Passer au chinois')}
  </Button>,
);

#Remarques

  • Texte de traduction : Utilisez ctx.t() de manière cohérente ; n'utilisez pas ctx.i18n.t.

#En lien

  • ctx.t() : Traduire du texte, utilisez cette méthode de manière cohérente.