缺少关键的i18next消息,但它正在工作

时间:2017-05-24 16:01:53

标签: angularjs internationalization i18next

我不断收到此消息

i18next::translator: missingKey es-AR translation El campo Ciudad es obligatorio. El campo Ciudad es obligatorio.
am-trips-my-trips.module.js:5 i18next::translator: missingKey es-AR translation El campo Ciudad es obligatorio. El campo Ciudad es obligatorio.

显示用户尝试使用所需的空白输入提交的文本。

  

事件form.component.js

  get originRequired(){
                return this.$i18next.t('event-form.' + this.event.type + '.originRequired', {originLabel: this.originLabel})
            }
  

事件form.json

{
    "event-form": {
        "hotel": {
            "originRequired": "El campo {{originLabel}} es obligatorio.",
        }
}

我应该像这样翻译吗?不希望它将它作为默认值传递!!我想把它作为钥匙传递! 虽然它正在工作,但它是默认值,但我想将它作为插值传递给它。感谢

1 个答案:

答案 0 :(得分:0)

不太了解你的问题。做了一个小jsfiddle:

i18next.init({
  lng: 'en',
  resources: {
     en: {
       translation: {
         "event-form": {
           "hotel": {
             "originRequired": "El campo {{originLabel}} es obligatorio.",
          }
        }
      }
    }
  }
}, function(err, t) {
  // initialized and ready to go!
  document.getElementById('output').innerHTML = i18next.t('event-form.hotel.originRequired', { originLabel: 'Ciudad' });
});

https://jsfiddle.net/jamuhl/8339motk/

如果密钥存在,则不会丢失。你得到了一个缺失的原因。

你的意思是:不要把它作为默认值传递!!我想把它作为钥匙传递!