#angular #ngx-translate
#angular #ngx-translate
Вопрос:
Когда я использую свою версию приложения Angular для разработки, все пути являются правильными. Но когда я создаю свое приложение для производственной версии, я развертываю его в контексте / интерфейсе /.
Я хочу изменить путь к ресурсам i18n (я использую ngx-translate) только для производственной версии моего приложения, поэтому я попробовал эту команду, которую я использую для создания приложения для производства:
"build-prod": "ng build --deploy-url /frontend/ --prod --base-href /frontend/",
но это не работает, мои ресурсы i18n в приложении prod все еще ищут путь по умолчанию
Ответ №1:
Вы можете использовать isDevMode() от Angular, чтобы указать разные пути для разработчиков и разработчиков. Пример:
export const createTranslateLoader = (http: HttpClient) => {
const cacheBuster = new Date();
return new TranslateHttpLoader(
http,
isDevMode() ? "/assets/i18n/" : "/frontend/assets/i18n/",
".json?cacheBuster=" cacheBuster
);
};