#javascript #json #node.js #angularjs #localization
#javascript #json #node.js #angularjs #локализация
Вопрос:
Каков наилучший способ обеспечить локализацию с Node.js а стек AngularJS?
Я пытаюсь обеспечить локализацию с помощью модуля локализации узла. Интерфейс — AngularJS, а сервер узла выполняет функцию службы REST, предоставляя только строки JSON.
В документации node-localize было написано, что мы можем передать папку, и все файлы translations.json будут использоваться для перевода. Но я не могу заставить это работать с файлами. Каким должен быть формат translations.json? Я хочу передать весь файл в Angular и с помощью фильтров хочу реализовать локализацию в представлениях (как описано здесь ).
Ответ №1:
Это сработало для меня, в основном просто используйте тот же JSON, который вы обычно передаете в конструктор:
tranlations.js
var Localize = require('localize');
var myLocalize = new Localize('./translations/');
console.log(myLocalize.translate("Testing...")); // Testing...
console.log(myLocalize.translate("Substitution: $[1]", 5)); // Substitution: 5
myLocalize.setLocale("es");
console.log(myLocalize.translate("Testing...")); // Pruebas...
myLocalize.setLocale("sr");
console.log(myLocalize.translate("Substitution: $[1]", 5)); // замена: 5
./translations/translations.json
{
"Testing...": {
"es": "Pruebas...",
"sr": "тестирање..."
},
"Substitution: $[1]": {
"es": "Sustitución: $[1]",
"sr": "замена: $[1]"
}
}
Затем для выполнения:
node translations.js
Комментарии:
1. Спасибо 🙂 Не могли бы вы предложить какие-либо другие модули npm для моего варианта использования — node (только вывод JSON, не отправляет файлы jade) amp; angular?
2. @Nitin кажется, это работает довольно хорошо, но я не тестировал другие.