0

angular-tranlsate に送信された翻訳ファイルに対して何らかのテスト (unit/e2e) を実行して、一部のキーが誤って翻訳されていないかどうかを確認できるかどうかを理解しようとしています。

私がfr.jsonを持っているとしましょう:

key1 : 'ma première chaîne',
key2 : 'ma deuxième chaîne',
key3 : 'ma troisième chaîne',
key4 : 'ma quatrième chaîne'

および en.json:

key1 : 'my first string',
key2 : 'my second string',
key4 : ''

en.json に「key3」がなく、「key4」の値が空であることに注意してください。

したがって、fr.json を fallbackLanguage として定義するとします。「en.json」をテストして、いくつかのキー (fallbackLanguage になる) と空の値がないかどうかを確認します。

助けやヒントをありがとう。

4

1 に答える 1

1

それはangular-translateオプションのようです。ここ を参照してください

$translateProvider
  .translations('de', { /* ... */ })
  .translations('en', { /* ... */ })
  .fallbackLanguage('en');

編集 :

キーが不足しているかどうかを手動で確認するには、次のようにします。

$q.all([
  $http.get('/path/to/fr.json'),
  $http.get('/path/to/en.json')
]).then(function (results) {
  var fr = results[0],
      en = results[1],
      i;

  for (i in fr) {
    if (!fr.hasOwnPropery(i)) { continue; }
    if (!(i in en)) {
      console.log(i + 'is in fr but not in en');
    }
  }

  for (i in en) {
    if (!en.hasOwnPropery(i)) { continue; }
    if (!(i in fr)) {
      console.log(i + 'is in en but not in fr');
    }
  }
});
于 2014-09-22T15:10:12.143 に答える