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.sql
Next Pagectx.view
Avis de traduction IA

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

#ctx.t()

Une fonction de raccourci i18n utilisée dans RunJS pour traduire du texte en fonction des paramètres de langue du contexte actuel. Elle est adaptée à l'internationalisation des textes intégrés tels que les boutons, les titres et les messages d'alerte.

#Scénarios d'utilisation

Tous les environnements d'exécution RunJS peuvent utiliser ctx.t().

#Définition du type

t(key: string, options?: Record<string, any>): string

#Paramètres

ParamètreTypeDescription
keystringClé de traduction ou modèle avec des espaces réservés (ex : Hello {{name}}, {{count}} rows).
optionsobjectFacultatif. Variables d'interpolation (ex : { name: 'Jean', count: 5 }), ou options i18n (ex : defaultValue, ns).

#Valeur de retour

  • Retourne la chaîne traduite ; si aucune traduction n'existe pour la clé et qu'aucune defaultValue n'est fournie, elle peut retourner la clé elle-même ou la chaîne avec les variables interpolées.

#Espace de noms (ns)

L'espace de noms par défaut pour l'environnement RunJS est runjs. Lorsque ns n'est pas spécifié, ctx.t(key) recherchera la clé dans l'espace de noms runjs.

// Recherche par défaut la clé dans l'espace de noms 'runjs'
ctx.t('Submit'); // Équivalent à ctx.t('Submit', { ns: 'runjs' })

// Recherche la clé dans un espace de noms spécifique
ctx.t('Submit', { ns: 'myModule' });

// Recherche séquentiellement dans plusieurs espaces de noms (d'abord 'runjs', puis 'common')
ctx.t('Save', { ns: ['runjs', 'common'] });

#Exemples

#Clé simple

ctx.t('Submit');
ctx.t('No data');

#Avec variables d'interpolation

const text = ctx.t('Hello {{name}}', { name: ctx.user?.nickname || 'Guest' });
ctx.render(`<div>${text}</div>`);
ctx.message.success(ctx.t('Processed {{count}} rows', { count: rows.length }));

#Textes dynamiques (ex : temps relatif)

if (minutes < 60) return ctx.t('{{count}} minutes ago', { count: minutes });
if (hours < 24) return ctx.t('{{count}} hours ago', { count: hours });

#Spécifier un espace de noms

ctx.t('Hello {{name}}', { name: 'Guest', ns: 'myModule' });

#Précautions

  • Plugin de localisation : Pour traduire du texte, le plugin de localisation doit être activé. Les entrées de traduction manquantes seront automatiquement extraites dans la liste de gestion de la localisation pour une maintenance et une traduction unifiées.
  • Prend en charge l'interpolation de style i18next : utilisez {{nomVariable}} dans la clé et passez la variable correspondante dans options pour la remplacer.
  • La langue est déterminée par le contexte actuel (ex : ctx.i18n.language, locale de l'utilisateur).

#Relatif

  • ctx.i18n : Lire ou changer de langue