путь к фоновому изображению в css с указанием c базовая ссылка в Angular 9 - PullRequest
0 голосов
/ 03 апреля 2020

Параметр 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?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...