i18next работает на сервере разработки, но не в службе приложений Azure - PullRequest
0 голосов
/ 23 октября 2019

Я сделал приложение реагирования, используя пакет i18next для его перевода. Поскольку я установил модуль i18n-backend, я разместил свои файлы в каталоге "public / locales / en / translation.json". Пока я развиваюсь, это работает просто отлично. Но если я разверну его в службе приложений AZURE, он выдаст мне предупреждение «недостающие ключи».

Просто упомяну:

Файлы существуют в каталоге из приложения-Сервис и тот же путь.

Но я не могу получить к ним доступ через URL

"myApplicationURL / locales / en / translation.json". enter image description here

import i18n from 'i18next';
import Backend from 'i18next-xhr-backend';
import LanguageDetector from 'i18next-browser-languagedetector';
import { initReactI18next } from 'react-i18next';

const fallbackLng = ['en'];
const availableLanguages = ['en', 'de'];

i18n
    .use(Backend)

    .use(LanguageDetector)

    .use(initReactI18next)

    .init({
        fallbackLng,
        debug: true,
        whitelist: availableLanguages,

        interpolation: {
            escapeValue: false
        },
    });

export default i18n;

Кто-нибудь когда-нибудь сталкивался с этой проблемой? Если честно, у меня нет подхода к решению этой проблемы.

Спасибо

Ответы [ 2 ]

1 голос
/ 23 октября 2019

Запуск локально реагировать (веб-пакет) обслуживает вашу локальную / публичную папку с помощью devserver -> на вашем сервере этой магии не существует ... файлы просто не обслуживаются сервером без конфигурации ...

0 голосов
/ 25 октября 2019

Теперь работает. Если у вас возникла такая же проблема, просто вставьте:

<staticContent>
    <mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>

в файл web.config. Это позволяет серверу обслуживать файлы json.

...