Jman
@Jman
Frontend Developer

Как в Loopback 3.0 переключить язык на лету?

Задача перевести тексты ошибок.
На клиенте меняю заголовок Accept Language на бекенде есть вот такой вот middleware
var SG = require('strong-globalize');
var Negotiator = require('negotiator');

module.exports = function(options) {
  var allowedLangs = ['en', 'de', 'ru'];
  return function localeHandler(req, res, next) {
    var lang = new Negotiator(req).language(allowedLangs);
    var g = SG();
    g.setLanguage(lang);
    next();
  };
};


И язык меняется но это ни как не отражается на других инстансах SG и даже если непосредственно перед вызовом нужного сообщения вызвать g.setLanguage ничего не меняется.
g.setLanguage('de');
this.message = g.f(
  'The %s instance is not valid. Details: %s.',
   context ? '`' + context + '`' : 'model',
   formatErrors(obj.errors, obj.toJSON()) || '(unknown)'
);
  • Вопрос задан
  • 35 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы