Я пытаюсь динамически импортировать i18n
файлы, используя webpack
:
function getI18n(lang) {
return import(/* webpackChunkName "i18n/[request]" */ `./locales/${lang}.json`)
.then(/*whatever*/)
}
Но даже до вызова этой функции в средстве разработки я вижу, что все файлы из этой папки были загружено:
- i18n / en. json. js
- i18n / ru. json. js
- i18n / nl. json. js
- i18n / nw. json. js
И т. Д. c.
Это не то, что я хочу. Я хочу динамически загружать требуемый блок во время выполнения .
Забавно, если я переименую файлы ru
-> ru2
и nw
-> nw2
и измените импорт, чтобы использовать путь с номером 2, например: ./locales/${lang}2.json
будет загружать только файлы i18n/ru2.json.js
и i18n/nw2.json.js
и игнорировать тех, у кого в имени нет символа 2
. Так что я думаю, что он работает с каким-то регулярным выражением вместо точного соответствия.
Спасибо
PS Честно говоря, я использую vuejs
и typescript
, так что проблема может быть где-то посередине. Я пытался следовать этому примеру vuei18n lazy load с моим кодом.