我使用angular-translate创建了语言选择的下拉菜单。
我希望默认语言选择是从$translateProvider.determinePreferredLanguage()
获得的值。我无法弄清楚如何访问此值。
下面的代码适用于允许用户更改语言,但默认情况下下拉菜单中没有显示任何内容。
我知道"{{$translateProvider.determinePreferredLanguage()}}"
是错误的,因为它是函数本身而不是它返回的内容。但是,我无法弄清楚如何显示用户的默认语言。
<select ng-model="langKey" ng-change="changeLanguage(langKey)">
<option value="">{{$translateProvider.determinePreferredLanguage()}}</option>
<option ng-repeat="language in languages" value="{{language.abbr}}">{{language.lang}}</option>
</select>
在我的helperService.js文件中,我的语言定义如下:
helper.languages = [
{abbr: "ar", lang: "العربية"},
{abbr: "zh-cn", lang: "简体中文"},
{abbr: "zh-tw", lang: "中國,繁體(台灣)"},
{abbr: "en", lang: "English"},
{abbr: "fr", lang: "Français"},
{abbr: "de", lang: "Deutsch"},
{abbr: "it", lang: "Italiano"},
{abbr: "ja", lang: "日本語"},
{abbr: "ko", lang: "한국어"},
{abbr: "pt-br", lang: "Português (Brasil)"},
{abbr: "ru", lang: "Pусский"},
{abbr: "es", lang: "Español"}
];
因此,如果用户的默认值为'en',则默认情况下它应在下拉列表中显示“English”。或者,如果它是'de',它应该说'Deutsch'。有什么建议吗?