πΒ Reference
πΒ Chapter
i18next-chained-backend
λ μ΄λ¦ κ·Έλλ‘ μ²΄μΈ(chain)μ²λΌ μ¬λ¬ λ°±μλλ₯Ό μ°κ²°νλ€. λ²μ νμΌμ κ°μ Έμ¬ λ 체μΈμ λ±λ‘λ λ°±μλλ₯Ό μμλλ‘ μλνλ€.i18next-fs-backend
)κ³Ό HTTP μμ²(i18next-http-backend
)μ μ‘°ν©νμ¬ μ¬μ©ν λ μ μ©νλ€. μλ₯Ό λ€μ΄, κ°λ° νκ²½μμλ λ‘컬 νμΌμ μ¬μ©νκ³ , νλ‘λμ
νκ²½μμλ CDNμμ λ²μ νμΌμ λΆλ¬μ€λλ‘ μ€μ ν μ μλ€.// i18n.js λλ i18next μ€μ νμΌ
import i18n from 'i18next';
import ChainedBackend from 'i18next-chained-backend';
import FSBackend from 'i18next-fs-backend';
import HttpBackend from 'i18next-http-backend';
const isServer = typeof window === 'undefined';
i18n
.use(ChainedBackend)
.init({
// ...κΈ°ν μ€μ (lng, fallbackLng λ±)
backend: {
backends: isServer ? [FSBackend] : [HttpBackend],
backendOptions: [
{
// FSBackend μ΅μ
: μλ²μμ νμΌ κ²½λ‘ μ§μ
loadPath: 'public/locales/{{lng}}/{{ns}}.json',
},
{
// HttpBackend μ΅μ
: ν΄λΌμ΄μΈνΈμμ HTTP κ²½λ‘ μ§μ
loadPath: '/locales/{{lng}}/{{ns}}.json',
},
],
},
});
isServer
λ³μλ₯Ό ν΅ν΄ νμ¬ νκ²½μ΄ μλ²μΈμ§ ν΄λΌμ΄μΈνΈμΈμ§ ꡬλΆνλ€.