2016-09-30 5 views
2

私はループバックプロジェクトのローカライゼーションにstrong-globalizeを使用しています。ローカライゼーションがnode.jsのstrong-globalizeで動作しない

私はセットアップを完了し、メッセージはデフォルトの英語のために正しくフェッチされます。

しかし問題は、他の言語のメッセージにアクセスしようとしても、まだ英語のメッセージが返されていることです。ここ

は私のコードである:リモート・メソッド内部

Server.js

var SG = require('strong-globalize'); 
SG.SetRootDir(__dirname); 
SG.setDefaultLanguage('en'); 
g = SG(); 

Coupon.js(リモートメソッドを持つモデル)

var SG = require('strong-globalize'); 
var g = SG(); 
var Negotiator = require('negotiator'); 

Coupon.js

var negotiator = new Negotiator(request); 
var acceptedLanguage = negotiator.language(); 
g.setLanguage(languageSelected); 
var message = g.m('valid coupon'); 

英語(en)のメッセージを生成するのに、コマンドslt-globalize -dを使用しました。 その後、私はファイルを貼り付けたesの新しいフォルダを作成しました。これはenフォルダにあります。 その後、そのファイルのすべてのメッセージをスペイン語のテキストで手動で更新しましたが、まだ英語のメッセージが表示されています。これが最初に動作するかどうか

答えて

2

多分、次を参照してください。その後、

g.setLanguage('es'); 

を、それは私のために働いていない

var availableLanguages = ['es', 'en']; 
var languageSelected = negotiator.languages(availableLanguages); 
g.setLanguage(languageSelected); 
+0

。たぶん私は何か間違っている。 – Amit

+0

他の言語のmessages.jsonを生成するには?私がやっているのは、slt-globalize -eを実行してenのmessages.jsonを生成していることです。それから私はesフォルダにそのmessages.jsonをコピーしています。そこで、英語のメッセージをesに置き換えます。 – Amit

+0

github.comのようなループバックアプリケーションにアクセスできますか?他の言語のmessages.jsonについては、スペイン語と同じように** slt-globalize -t **(-tは 'translation ')npmjs.comのREADMEに詳細があります。 – Setogit

関連する問題