如何在angularjs 1.6上使用i18n

时间:2017-05-09 16:59:46

标签: javascript angularjs json i18next

我应该如何使用i18n,以便变量“title”获取traslatated json中的值。它应该返回“Mis viajes”,现在它不返回任何东西。谢谢 trip-header.jade

我这样做了,屏幕上显示“0”。

.trips-header
    .background-image
    .header-content
        p.title.ng-i18next {{   title | i18next}} 
        p.sub-title.ng-i18next {{   sub-title | i18next}} 

Mi json

 {
  "es-AR": {
      "translation": {
         "title":"Mis Viajes!",
         "sub-title": " te ayuda a planificar y organizar tus viajes."
      }
  }
}

1 个答案:

答案 0 :(得分:1)

以下是一种示例方法。你希望html看起来像这样:

<h1>{{'hello' | i18next}}</h1>

你的玉是这样的:

- var foo = "{{hello | i18next}}"
h1= foo

您的翻译是:

{
  "es-AR": {
      "translation": {
          "hello":"hi!"
       }
    }
}

您的角度i18n应正确配置:

yourApp.config( ['$i18nextProvider',function( $i18nextProvider ) {
    $i18nextProvider.options = {
        lng: 'es-AR', //select or detect from browser
        useCookie: false,
        useLocalStorage: false,
        fallbackLng: 'en',
        resGetPath:  l_prefix + 'locales/__lng__/__ns__.json',
        defaultLoadingValue: ''
    }
// file is expected to be locales/es-AR/translation.json
..... remaining of the config

编辑:在&#39;你好&#39;周围加上引号。现在它被视为文本而不是变量。