угловатыйигнорируется для статических ресурсов - PullRequest
0 голосов
/ 28 февраля 2019

Я не совсем уверен, если это неправильно или нет, но когда я генерирую prod build с angular:

"ng  build --outputPath=.. --base-href="./path" --prod"

статические ресурсы по-прежнему извлекаются из ./ root, как это:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Ask</title>
  <base href="./path">

 <link rel="stylesheet" href="styles.3ff695c00d717f2d2a11.css"></head>
 <body>
   <app-root></app-root>
  <script type="text/javascript" src="runtime.a5dd35324ddfd942bef1.js">
  </script><script type="text/javascript" src="es2015-polyfills.358ed1827c991dd2afb0.js" nomodule></script><script type="text/javascript" src="polyfills.407a467dedb63cfdd103.js"></script><script type="text/javascript" src="main.d1ac828f1974a06a0fe5.js"></script>
</body>
</html>

Разве это не должно начинаться с префикса base-href?

href="path/styles.3ff695c00d717f2d2a11.css"
src="path/runtime.a5dd35324ddfd942bef1.js

Ответы [ 3 ]

0 голосов
/ 28 февраля 2019

Вы должны удалить знак равенства и кавычки из команды.

ng  build --outputPath=.. --base-href ./path --prod
0 голосов
/ 11 июля 2019

Я остановился на поиске решения, в котором у нас есть фиксированный

<base href="/APP-NAME">

в индексном файле.Утверждение JanS «Таким образом браузер делает префикс при извлечении ресурсов» вызвало у меня что-то не так, потому что styles.css был получен из URL без добавления «/ APP-NAME», начиная с https://localhost:43468/styles.css вместо https://localhost:43468/APP-NAME/styles.css.

Теперь, когда я записываю это, это кажется довольно очевидным, нам нужно добавить косую черту в конце:

<base href="/APP-NAME/">

Вводящая в заблуждение проблема заключалась в том, что она работалакогда мы запустили наше приложение .NET Core Angular из Visual Studio 2017, но больше не работали при использовании Visual Studio 2019. Оказалось, что запуск приложения с Visual Studio 2017 в IIS Express запускает приложение как на https://localhost:43468и https://localhost:43468/APP-NAME Поэтому он работал для извлечения статических ресурсов из «неправильного» URL.Похоже, что они исправили проблему запуска 2 ulr в IIS Express.

0 голосов
/ 28 февраля 2019

Параметр --base-href "xyz" (обратите внимание на отсутствующий =) должен генерировать <base href="xyz"> в <head> вашего index.html.

Таким образом, браузер делает префикс при получении ресурсов.

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