Относительный путь для статических файлов, таких как images / css/js и т. д
У меня есть структура папок /src/app/some-module/some-component
и src/public/images/user.png
. Теперь, когда я хочу показать образ в моем некотором компоненте, я должен дать путь как ../../../public/images/user.png
, который кажется слишком наивным и расточительным усилием, когда число образов увеличивается.
Есть ли у нас механизм маршрутизации или относительный путь в angular2 для обслуживания статических файлов. Я использую Angular2 с webpack.
2 ответа:
Это зависит от того, как выглядит Ваш
base href
.Например, если у вас есть
<base href="/src/">
Вы можете легко использовать ниже, независимо от того, где находится ваш шаблон компонента.
<img src="public/images/user.png" />
Надеюсь, это поможет!!
Если вы используете WebPack, он заботится о путях во время сборки.
<img src="...">
должен указывать на физическое расположение файла в проекте относительно шаблона, в котором он используется.Например, в моем случае, без WebPack, это было бы
<img src="img/rhamt-square-248.png" width="172">
Так как
img/
находится непосредственно под корнем приложения.В то время как с WebPack это работает:
<img src="../../../img/rhamt-square-248.png" width="172">
В противном случае вы получите ошибку компиляции, такую как:
Ошибка в ./ src / app / misc / about.деталь.html
Модуль не найден: ошибка: не удается разрешить './ img / rhamt-square-248.PNG' в '/дома/Ондра/работа/миграции/заводную-веб/UI в/src/главная/веб-приложения/ГРЦ/приложение/смешанная'
@ ./ src / app / misc / about.деталь.html 1: 402-439
@ ./ src / app / misc / about.деталь.ts
@ ./ГРЦ/приложение/приложение.модуль.ts
@ ./ src / main.ts