Угловой перевод отлично работает как фильтр в представлении. Я использую угловой переводить-погрузчик-статические-файлы с внешними файлами, такие как locale-en.json
и т.д.Угловой перевод синхронности в JS
Проблемы заключается в том, когда я пытаюсь сделать что-то вроде этого:
var placeholder = $translate('placeholder.NAME')
.then(function (translatedValue) {
return translatedValue;
});
Я всегда получаю обещание назад, и в пользовательском интерфейсе он отображается как {}
вместо слова NAME для английского и т. д.
Каков правильный способ перевода в JS с использованием углового перевода?
EDIT: Пробовал это и получил следующий результат (до сих пор не решена)
var placeholder = '';
$translate('placeholder.NAME').then(function (translatedValue) {
console.log(translatedValue);
placeholder = translatedValue;
}, function(err){
console.log(err); // returns placeholder.NAME
});
console.log(placeholder); // returns empty string
Я попробовал это, тоже - но я попробую еще раз. – itamar
@itamar Это зависит от того, как вы в конечном итоге используете переменную 'placeholder'. Вероятно, это должен быть '$ scope.placeholder'. – zeroflagL
Он фактически используется для удаления в массив областей видимости, поэтому я сохраняю его как локальную переменную. – itamar