logologo
开始
教程
手册
开发
插件
API
首页
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
开始
教程
手册
开发
插件
API
首页
logologo
RunJS 概述
导入模块
容器内渲染

全局变量

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

#ctx.t()

在 RunJS 中用于翻译文案的 i18n 快捷函数,基于当前上下文的语言设置。适合按钮、标题、提示等内联文案的国际化。

#适用场景

所有 RunJS 执行环境均可使用 ctx.t()。

#类型定义

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

#参数

参数类型说明
keystring翻译 key 或带占位符的模板(如 Hello {{name}}、{{count}} rows)
optionsobject可选。插值变量(如 { name: '张三', count: 5 }),或 i18n 选项(如 defaultValue、ns)

#返回值

  • 返回翻译后的字符串;若 key 无对应翻译且未提供 defaultValue,可能返回 key 本身或经插值后的字符串。

#命名空间(ns)

RunJS 环境的默认命名空间为 runjs。在不指定 ns 时,ctx.t(key) 会从 runjs 命名空间查找 key。

// 默认从 runjs 命名空间取 key
ctx.t('Submit'); // 等价于 ctx.t('Submit', { ns: 'runjs' })

// 从指定命名空间取 key
ctx.t('Submit', { ns: 'myModule' });

// 从多个命名空间依次查找(先 runjs,再 common)
ctx.t('Save', { ns: ['runjs', 'common'] });

#示例

#简单 key

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

#带插值变量

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 }));

#相对时间等动态文案

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

#指定命名空间

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

#注意事项

  • 本地化插件:如需翻译文案,需先激活本地化插件。缺失翻译的词条会自动提取到本地化管理列表,便于统一维护和翻译。
  • 支持 i18next 风格插值:在 key 中使用 {{变量名}},在 options 中传入同名变量即可替换。
  • 语言由当前上下文(如 ctx.i18n.language、用户 locale)决定。

#相关

  • ctx.i18n:读取或切换语言