Angular 5 - сборка Dev / QA с использованием ng build с uglify и minify (например, ng build --prod) - PullRequest
0 голосов
/ 29 января 2019

Я использую angular5 и angular-cli и имею требование увеличить / уменьшить код, который можно просмотреть в инспекторе браузера.Мой angular-cli.json имеет:

"environmentSource": "environments/environment.ts",
"environments": {
    "dev": "environments/environment.ts",
    "prod": "environments/environment.prod.ts"
}

Для производства он работает нормально с ng build --prod Но это можно использовать только для производственной среды.Я хочу сделать то же самое для разработчиков, но я не могу этого достичь.Я уже пробовал большинство вариантов сборки со значением prod, кроме --enviornment:

Flag                 --dev    --prod
--aot                false    true
--environment        dev      prod
--output-hashing     media    all
--sourcemaps         true     false
--extract-css        false    true
--named-chunks       true     false
--build-optimizer    false    true with AOT and Angular 5

Например,

ng build --aot=true --output-hashing=all --sourcemaps=false --extract-css=true --named-chunks=false --build-optimizer true

Но у меня это не работает.Не создавая код с измененным кодом для этой среды (здесь dev).

как я могу использовать ту же команду сборки для других сред?Как я могу использовать оптимизацию prod в других средах?

Ответы [ 2 ]

0 голосов
/ 29 января 2019

Если вы хотите использовать значения dev environment.ts с оптимизацией --prod, просто укажите это с флагом:

ng build --prod --environment=dev

Это применимо --prod настройки, но переопределяет --environment, для которого будет использоваться файл среды.

В более новых версиях Angular CLI с изменением на angular.json замените --environment на --configuration.Поскольку в конфигурации по умолчанию используется environment.ts, просто передайте ей пустую строку, чтобы файл среды не был перезаписан, например, --prod --configuration=

0 голосов
/ 29 января 2019

Этого можно добиться, определив новые среды в файле angular-cli.json или angular.json

angular-cli.json:

"environments": {
  "dev": "environments/environment.ts",
  "prod": "environments/environment.prod.ts",
  "qa": "environments/environment.qa.ts"
}

angular.json:

"configurations": {
  "production": { ... },
  "qa": {
    "fileReplacements": [
      {
        "replace": "src/environments/environment.ts",
        "with": "src/environments/environment.qa.ts"
      }
    ]
  }
}

После создания environment.qa.ts в каталоге сред.

Подробнее об этом можно узнать по здесь

...