Dojo を使用してローカリゼーションをセットアップしようとしていますが、機能しません。
次のようなフォルダー構造があります。
Folder: locale
- about.html
- Folder: nls
- about.js
- Folder fr
- about.js
これは、ローカライズする必要があるファイルです。
<html>
<head>
<script type="text/javascript">
var dojoConfig = {
locale: 'fr'
};
</script>
<script src="//servicesbeta.esri.com/jsapi/arcgis/3.4/js/dojo/dojo/dojo.js"></script>
<script>
require([
"dojo/i18n",
"dojo/i18n!./nls/about"
],function(
i18n,
nls
){
console.log("Good Morning");
console.log(dojoConfig);
console.log(nls['hello']);
});
</script>
</head>
<body></body>
</html>
これは、ファイルからの出力です。
French Hello
出力にではなくが含まれることを期待していEnglish Hello
ます。
要求を次のように変更した場合:
require([
"dojo/i18n",
"dojo/i18n!./nls/about.js"
],function(
に:
require([
"dojo/i18n",
"dojo/i18n!./nls/about"
],function(
私はこの出力を得ます:
ここで何が起こっているのか正確にはわかりません。
最初の例でフランス語のローカリゼーションが見つからないのはなぜですか? ロードされ、ローカルが設定されています。
2 番目の例は、私が目にするほとんどの Dojo の例とより一致しています。これはどうしたの?
どんな助けでも大歓迎です。ありがとう!
完全を期すために、nls/about.js:
define({
root: {
hello: "English Hello"
},
"fr":true
});
および nls/fr/about.js:
define({
root: {
hello: "French Hello"
}
});