Как использовать angular-translate в фильтре клиента и повторно перевести на $translate.use()

Я использую пользовательский фильтр для перевода ng-options выбранного элемента. Перевод работает нормально, пока я не использую $translate.use() для смены языка. Я хочу, чтобы ng-options был переведен заново. Кто-нибудь знает как это сделать?

Это мой фильтр клиентов:

function translateAndFormatPhoneCountry(translateFilter) {
    return function(phoneCountry) {
        return translateFilter(phoneCountry.name) + " (" + phoneCountry.countryCode + ")";
    };
}

И это мой выбранный элемент:

phoneCountry will typically look like this:

{"name": "UNITED_KINGDOM", "countryCode": "+44"}

person Chris    schedule 31.10.2014    source источник


Ответы (1)


Не беспокойтесь, я разобрался. Смотрите здесь для ориентира: https://github.com/angular-translate/angular-translate/issues/134.

В шаблоне:

ng-options="signup.translate.instant(phoneCountry.name) для phoneCountry в signup.model.phoneCountries"

В контроллере введите $translate, затем:

this.translate = $перевести;

person Chris    schedule 01.11.2014