Как указать Angular статические активы на WWW URL - PullRequest
0 голосов
/ 08 декабря 2018

Когда я запускаю ng build, я получаю этот файл index.html:

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

  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>

<script type="text/javascript">
  const appData = JSON.parse('<%=json%>');
</script>

<app-root></app-root>
<script type="text/javascript" src="runtime.js"></script>
<script type="text/javascript" src="polyfills.js"></script>
<script type="text/javascript" src="styles.js"></script>
<script type="text/javascript" src="vendor.js"></script>
<script type="text/javascript" src="main.js"></script>
</body>
</html>

Используя скрипт после сборки, я перенесу статические ресурсы в какой-нибудь CDN, поэтому я действительно хочу сгенерировать.HTML-файл, который выглядит следующим образом:

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

  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>

<script type="text/javascript">
  const appData = JSON.parse('<%=json%>');
</script>

<app-root></app-root>
<script type="text/javascript" src="http://cdn.github.com/runtime.js"></script>
<script type="text/javascript" src="http://cdn.github.com/polyfills.js"></script>
<script type="text/javascript" src="http://cdn.github.com/styles.js"></script>
<script type="text/javascript" src="http://cdn.github.com/vendor.js"></script>
<script type="text/javascript" src="http://cdn.github.com/main.js"></script>
</body>
</html>

(я создал домен cdn.github.com).Таким образом, я мог бы вручную сгенерировать URL для этих файлов, но мне интересно, позволяет ли Angular как-то его настраивать?

1 Ответ

0 голосов
/ 08 декабря 2018

Вы можете настроить его в файле angular.json в своем угловом проекте.

{
  "projects": {
    "<Your Angular Project Name>": {
        "architect": {
            "build": {
                "options": {
                    "baseHref": "/testapp/",
                    "deployUrl": "/testapp/",
                    ...
                }
            }
        }
    }
  }
}

deployUrl - это в основном то, что вы ищете.

Список доступных вариантов сборки и их описание можно найти по ссылке ниже: https://github.com/angular/angular-cli/wiki/build

...