2

同じページに複数の言語を表示したいという奇妙なシナリオで、Dojo の extraLocale 機能を利用して 2 次言語でラベルを付けるにはどうすればよいですか?

Dojo で追加のロケールを次のように定義したとします。

var dojoConfig = {
locale : "en",
extraLocale: [ "zh-cn", "ja-jp" ]
};

次に、i18n を使用しようとすると、次の方法でクラスを定義すると、MyClass_nls のすべての英語ラベルが既に含まれているオブジェクトが常に取得されます。MyClass_nls の中国語バージョンを検索するために、"zh-cn" などの追加のロケールの 1 つを指定するにはどうすればよいですか?

define(
    [   "dojo/_base/declare", "dojo/_base/lang",
    "dijit/_TemplatedMixin",
            "dijit/_WidgetsInTemplateMixin",
            "dojo/text!./templates/MyClass.html",
            "dojo/i18n!./nls/MyClass_nls" ],

    function(declare, lang, _TemplatedMixin,
            _WidgetsInTemplateMixin, template, i18n) {

        return declare(
                "group.test.MyClass",
                [ _TemplatedMixin, _WidgetsInTemplateMixin,
                        Evented ],
                {

このようなものは機能しますが、dojoConfig の extraLocale 機能は必要ないと思います

var bundle = i18nResolver.getLocalization("group/mypath", "MyClass_nls", "zh-cn");
4

1 に答える 1