Параметр baseHref в angular. json - это / iofrog / +, в i18n.locales определено 7 языков, поэтому последний baseHref в индексе. html - это / iofrog / en для Engli sh build ,
в css файле для компонента приложения, который у меня есть:
background-image: url('~/assets/img/background.jpg');
Это переводится Angular 9 CLI в путь /iofrog/assets/img/background.jpg, поэтому / en / пропущен! Это ошибка в Angular CLI?
Я также пытался:
background-image: url('/assets/img/background.jpg'); // not showing the image
background-image: url('./assets/img/background.jpg'); // compiler error
background-image: url('assets/img/background.jpg'); // not showing the image
Я также нашел --rebaseRootRelativeCssUrls = true | false, но это устарело.
Обходное решение, которое работает в TS:
this.backgroundImageURL = `url(${this.baseHref}assets/img/background.jpg)`;
И в HTML шаблон:
[style.background-image]="backgroundImageURL ? backgroundImageURL : ''"
Но это не элегантно, и изображение загружается после визуализации html.
Какое правильное решение в Angular 9?