本地化

如何使用 GeoScene Maps SDK for JavaScript 进行本地化?

SDK 将自动使用浏览器的语言环境。如果不希望使用该行为,可以在运行时将应用程序设置为特定的语言环境。自版本 4.16 开始,可通过 intl.setLocale(locale) 方法执行此操作。

代码块使用深色复制
          
1
2
3
4
5
6
7
8
9
10
// Sets the locale to French
intl.setLocale("fr");

// Sets the locale to UK English.
// Dates are formatted in day/month/year order.
intl.setLocale("en-GB");

// Sets the locale to US English.
// Dates are formatted in month/day/year order.
intl.setLocale("en-US");

请注意,应用程序可以随时调用 setLocale。微件将自动更改为新的语言环境。此行为被视为实验性行为,因为 SDK 不是围绕运行时切换语言环境而设计的。例如,要素图层上的标注或由 Arcade 表达式格式化的数字和日期将不会更新。建议在应用程序中尽快调用 setLocale

区域设置仍然可以使用全局对象进行初始化,类似于 4.16 版本之前的处理方式。

代码块使用深色复制
      
1
2
3
4
5
6
<script>
  // Set the locale before the JSAPI loads
  geosceneConfig = {
    locale: "fr-FR"
  };
</script>

在版本 4.16 之前,在 Dojo 配置对象中设置区域设置是首选方法。这仍然适用于向后兼容,但不建议继续使用。

有关 API 本地化实用程序的更多信息,请参阅 Intl 模块 - 参考手册文档。

支持从右到左(RTL)

GeoScene Maps SDK for JavaScript 提供双向支持。要启用从右向左(RTL),请将 <html><body> 标记中的 dir 属性设置为 rtl

代码块使用深色复制
 
1
<html dir="rtl">

这将影响 API 的许多方面,例如:

  • 微件内容。
  • 主题。
  • 使用 UI add/empty/move 方法的 leading/trailing 选项指定的微件位置。对于从左到右 (LTR),"leading" 为左,"trailing" 为右。对于从右到左 (RTL),"leading" 为右,"trailing" 为左。

或者,从右到左的 dir 属性可以单独应用于微件容器。然后,只有微件的内容会受到影响:

代码块使用深色复制
      
1
2
3
4
5
6
<body>
  <div id="viewDiv">
    <div id="elevationWidgetDiv" dir="rtl">
    </div>
  </div>
</body>

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。