2

私は最近のJavascriptに比較的慣れておらず(約10年前に常に使用していました)、globalize.jsに問題があります。

グローバル化に関連して私が頭に浮かんだことは次のとおりです

<script src ="{% static "js/jquery-2.1.0.min.js" %}" type="text/javascript"></script>
<script src ="{% static "js/node_modules/globalize/dist/globalize.min.js" %}" type="text/javascript"></script>
<script>
    $.get( "{% static "json/en/ca-gregorian.json" %}", Globalize.load );
    $.get( "{% static "json/de/ca-gregorian.json" %}", Globalize.load );
    $.get( "{% static "json/supplemental/likelySubtags.json" %}", Globalize.load );
    $.get( "{% static "json/supplemental/timeData.json" %}", Globalize.load );
    $.get( "{% static "json/supplemental/weekData.json" %}", Globalize.load );
    console.log("short:" + Globalize.format( new Date( 2010, 10, 30, 17, 55 ), { datetime: "short" }));
    console.log("medium:" + Globalize.format( new Date( 2010, 10, 30, 17, 55 ), { datetime: "medium" }));
    console.log("long:" + Globalize.format( new Date( 2010, 10, 30, 17, 55 ), { datetime: "long" }, "de" ));
</script>

出力は次のとおりです。

short:11/30/2010 5:55:00 PM (index):21
medium:11/30/2010 5:55:00 PM (index):22
Uncaught TypeError: Cannot read property 'calendar' of null 

ご覧のとおり、2 つの問題が発生しています。{datetime: } パラメータは出力にまったく影響を与えていないようです。さらに重要なことに、日付を他の言語に翻訳できない理由がわかりません。インクルードがありませんか?問題リストの他のスレッドは、日付をローカライズするために必要なのはこれだけであると指摘しました。

4

2 に答える 2

0

Globalize 1.x の使用例に従ってください。

また、$.get呼び出しを使用して CLDR データを動的にロードする例がglobalize.js にあります: 動的読み込み

ご不明な点がございましたら、お気軽にお問い合わせください。

于 2015-05-14T12:41:42.640 に答える
0

代わりにこれを使用することをお勧めします:

new Date().toLocaleDateString('de', { year: 'numeric', month: 'long', day: 'numeric' })

あるいは:

new Date().toLocaleDateString(Globalize.culture().name, { year: 'numeric', month: 'long', day: 'numeric' })

Globalize.culture().name手動で、またはglobalize.culture.{culture}[.min].jsそれぞれのファイルをインポートすることによって、可能性のあるカルチャを Globalize に追加したことを前提としています。globalize.culture.fr.min.js

于 2015-01-09T18:09:30.583 に答える