使用ngx-translate的translateService.get()获取嵌套的json值

问题描述 投票:0回答:1

我有一个带有嵌套翻译的翻译文件:

...
"LANG": {
    "Dutch": "Néerlandais",
    "English": "Anglais",
    "French": "Français"
},
...

我正在尝试使用 TranslateService 检索我的翻译:

this.translate.get(['LANG.French', 'LANG.English', 'LANG.Dutch'])
  .subscribe((translations) => {
    console.log(translations.LANG.French);
});

我认为翻译对象会是这样的:

translations : {
    LANG : {
        "Dutch": "Néerlandais",
        "English": "Anglais",
        "French": "Français"
    }
}

但事实上它看起来像这样:

translations : {
    LANG.Dutch : "Néerlandais",
    LANG.English: "Anglais",
    LANG.French: "Français"
}

console.log(translations.LANG.French) 失败,因为translations.LANG 未定义。

有办法实现这个吗?

ngx-translate
1个回答
1
投票

万一有人来这里:


this.translate.get(['LANG'])
     .subscribe((translations) => {
    console.log(translations.LANG.French);
});

它可以工作,但会检索整个对象 LANG。因此它可能包含一些无用的属性。

© www.soinside.com 2019 - 2024. All rights reserved.