跳至主要內容

多语言 (Language)

Mr.Hope小于 1 分钟

多语言 (Language)

多语言功能允许用户在不同的语言间进行快速切换。默认使用 LanguageWidget.ts 作为该功能的基类。

参数

  • router: 非响应式变量,表示应用的路由对象。
  • matched: 非响应式变量,表示当前路由匹配的信息。
  • languages: 响应式变量,表示当前的语言列表。
  • currentLanguage: 响应式变量,表示当前选中的语言。

方法

onChange()

  • 类型: 响应式方法
  • 描述: 切换语言,表示当前选择的语言。
  • 入参:
    • value (Object): 用户选择的语言信息。
@Widget.Method()
protected onChange(value: RuntimeLanguage) {}

initLanguages()

  • 类型: 非响应式方法
  • 描述: 加载语言列表。
protected async initLanguages(): Promise<void> {}

initCurrentLanguage()

  • 类型: 非响应式方法
  • 描述: 初始化当前语言。
  • 入参:
    • code (String): 语言编码。
protected initCurrentLanguage(code: string) {}

reloadMaskProcess()

  • 类型: 非响应式方法
  • 描述: 重新加载语言信息。
protected reloadMaskProcess(reloadParameters: ReloadMaskCallChainingParameters) {}

$$mounted()

  • 类型: 非响应式方法
  • 描述: 组件挂载时执行,初始化多个值,包括:
    • router (应用路由对象)
    • matched (当前路由匹配信息)
protected async $$mounted() {}

如何替换

import { LanguageWidget, SPI, MaskWidget } from "@kunlun/dependencies";

@SPI.ClassFactory(MaskWidget.Token({ widget: "language" }))
export class CustomLanguageSwitcher extends LanguageWidget {}