原生JS使用

核心引擎为您提供运行时行为。您的应用决定如何呈现它。

每个区域的上下文

在引擎上设置默认上下文,然后在需要时为特定调用覆盖它。

ts
const 引擎 = create18waysEngine({
  apiKey: 'YOUR_18WAYS_PUBLIC_API_KEY',
  baseLocale: 'zh-CN',
  locale: 'fr-FR',
  context: 'app',
});
 
const payNow = await engine.t('Pay now', {
  context: 'checkout.button',
});

变量的工作方式是一样的

ts
const = await 引擎.t('你好 {name}', {
  vars: { name: 'Ada' },
});

相同的waysParser语法在 React 中使用的也适用于这里。

缓存行为

引擎在内存中保持一个翻译存储。

这意味着:

  • 第一次请求新字符串或区域设置时可能会调用API
  • 后续请求可以从商店中提供
  • 如果翻译已经被缓存,切换回之前的语言环境是很便宜的

自带本地化控制

在原生 JavaScript 中,区域设置切换是显式的。

ts
异步 函数 设置区域(区域) {
  引擎.设置区域(区域);
  等待 渲染();
}

这比假装核心包拥有路由或 React 状态要更合适。

何时留在核心包中

如果你想要最大控制,请留在这里。

当您想要时,请升级到 React 或 Next 包:

  • JSX 翻译原语
  • 内置区域设置钩子
  • 适配器管理的路由和元数据