Windows Admin Center 中的字符串和本地化

让我们更深入地了解 Windows Admin Center 扩展 SDK,并讨论字符串和本地化。

要启用在表示层上呈现的所有字符串的本地化,请利用 /src/resources/strings 下的 strings.resjson 文件,此文件已经设置好了。 需要向扩展添加新字符串时,请将其作为新条目添加到这个 resjson 文件中。 现有结构遵循以下格式:

"<YourExtensionName>_<Component>_<Accessor>": "Your string value goes here.",

你可以对字符串使用任何喜欢的格式,但请注意,生成过程(此过程接受 resjson 并输出可用的 TypeScript 类)会将下划线 (_) 转换为句点 (.)。

例如,此条目:

"HelloWorld_cim_title": "CIM Component",

生成以下访问器结构:

MsftSme.resourcesStrings<Strings>().HelloWorld.cim.title;

添加其他语言以进行本地化

要本地化为其他语言,需要为每种语言创建一个 strings.resjson 文件。 这些文件需要放在 \loc\output\{!ExtensionName}\{!LanguageFolder}\strings.resjson 中。 具有相应文件夹的可用语言包括:

语言 文件夹
Čeština cs-CZ
Deutsch de-DE
英语 zh-CN
Español es-ES
Français fr-FR
Magyar hu-HU
Italiano it-IT
日本語 ja-JP
한국어 ko-KR
Nederlands nl-NL
Polski pl-PL
Português (Brasil) pt-BR
Português (Portugal) pt-PT
Русский ru-RU
Svenska sv-SE
Türkçe tr-TR
中文(简体) zh-CN
中文(繁體) zh-TW

注意

如果你的文件结构需求在 loc/output 中不同,则需要调整 gulpfile.js 中 gulp 任务“generate-resjson-json-localized”的 localeOffset。 这个偏移量是系统应该开始搜索 strings.resjson 文件时在 loc 文件夹中的深度。

每个 strings.resjson 文件的格式方式与本指南前面提到的相同。

例如,若要包括西班牙语的本地化,请在 \loc\output\HelloWorld\es-ES\strings.resjson 中包含以下条目:

"HelloWorld_cim_title": "CIM Componente",

无论何时添加本地化字符串,都必须再次运行 gulp generate 才能显示这些字符串。 运行:

gulp generate

要确认已生成字符串,请导航到 \src\app\assets\strings\{!LanguageFolder}\strings.resjson。 你新添加的条目将显示在此文件中。 现在,如果你在 Windows 管理中心中切换语言选项,你将能够看到扩展中的本地化字符串。