Я работаю над проектом TypeScript, который должен загружать переводы из файлов .json
, с намерением создать один языковой файл для каждой страны. Пример: en.json
, es.json
.
Тогда я должен иметь возможность использовать переводы внутри .ts
файлов с какой-то функцией, такой как __('red')
или как предлагают другие расширения.
Тогда окончательно скомпилированные .js
файлы должны содержать все переводы для переключения языка на «в реальном времени».
Содержимое файлов json может быть примерно таким:
es. json
{
"colors": {
"red": "rojo",
"blue": "blue"
}
}
Кажется, что текущий рекомендуемый (по документации) загрузчик i18n и плагин для Webpack устарели:
Я хочу знать, безопасно ли использовать эти расширения или есть ли доступные варианты для моего случая, я попытался i18next и i18next-loader , но это не похоже на мою текущую настройку, похоже, что-то связано с тем, как работает процесс импорта модулей. Так что, возможно, другие простые решения, поддерживающие Webpack + TypeScipt, могли бы решить эту проблему.
Это мой текущий пакет. json зависимости
{
"dependencies": {
"animate.css": "^3.7.2",
"i18next": "^19.1.0",
"intl-tel-input": "^16.0.8",
"uniq": "^1.0.1"
},
"devDependencies": {
"@alienfast/i18next-loader": "^1.1.4",
"@babel/core": "^7.7.5",
"babel-preset-es2015": "^6.24.1",
"babel-preset-react": "^6.24.1",
"babel-preset-stage-0": "^6.24.1",
"babelify": "^10.0.0",
"browserify": "^16.5.0",
"copy-webpack-plugin": "^5.1.1",
"css-loader": "^3.4.2",
"file-loader": "^5.0.2",
"gulp": "^4.0.2",
"node-sass": "^4.13.0",
"sass-loader": "^8.0.0",
"style-loader": "^1.1.3",
"terser-webpack-plugin": "^2.2.3",
"ts-loader": "^6.2.1",
"typescript": "^3.7.3",
"webpack": "^4.41.2",
"webpack-cli": "^3.3.10",
"webpack-dev-server": "^3.9.0"
}
}