Как создать собственную сборку ng --qa Angular 5.2

Я хотел бы создать ng build --qa, где он собирает environment.qa.ts и выполняет AOT, объединение и удаление мертвого кода, но не минификацию и унификацию

Как бы это сделать в Angular 5.2

Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
1
0
2 788
4

Ответы 4

Если вы используете angular6, вам необходимо добавить свой environment.qa.ts в свои конфигурации angular.json.

Сделав это как в разделе build, так и в разделе configuration, просто запустите ng build --configuration=qa.

В angular6 мы делаем это, как показано ниже:

  1. Создайте свой собственный файл environment.qa.ts внутри папки окружения. Где вы можете редактировать подробности или вы можете добавить дополнительные сведения, например URL-адрес для вашей среды qa:

    export const environment = {
      production: false,
      URL:'http://something:8200'
    }
    
  2. Теперь в angular.json вам нужно будет добавить конфигурацию qa внутри конфигурации, а также вам нужно упомянуть замену файла там.

    "configurations": {

            "qa": {
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.qa.ts"
                }
              ],
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true
            }
          }
    

    Вам решать, если вы хотите, чтобы buildOptimizer, оптимизация и все, что нужно было сделать в qa build, вы можете использовать как истинное значение или удалить эти параметры.

    3.Завершите сборку с помощью этой команды ng build --configuration = qa

Я использую angular 5.2, как бы я это сделал в angular 5.2

kumar 01.10.2018 15:09

@kumar, если вы последуете вышеизложенному, получаете ли вы какую-либо ошибку?

DirtyMind 01.10.2018 17:00

Это также может помочь вам ссылка

DirtyMind 01.10.2018 19:48

Можно ли запустить его как ng build --qa? Если мы сможем запустить ng build --prod, это тоже должно быть каким-то образом.

ChiragMS 13.04.2020 20:06

Для версии angular 5 вам просто нужно создать файлы среды, например:

/src/environments/environment.prod.ts
                  environment.qa.ts
                  environment.ts

Затем в angular.cli.json:

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

А с консоли достаточно выполнить следующую команду:

ng build --env=qa

Вы можете провести тест и увидеть, что значения, взятые в этом случае, являются значениями из environment.qa.ts

Создайте свой environment.qa.ts внутри папки окружающая среда.

Затем перейдите в файл angular.json и В разделе параметров конфигурации добавьте конфигурацию для QA как

"qa": {
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true,
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.qa.ts"
                }
              ]
            },

So the overall code will look like

Затем перейдите в package.json и добавьте раздел скрипта, как показано ниже.

"scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build --prod --aot --build-optimizer",
    "build:prod": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --c prod --build-optimizer --aot",
    "build:qa": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --c qa --build-optimizer --aot",
    "build:dev": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --c dev --build-optimizer --aot",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },

тогда вы можете запустить npm run build:qa для qa и npm run build:dev для dev и npm run build:prod для prod

Другие вопросы по теме