Как добавить/установить среду Угловой файл 6 angular.json

Как указать среду для использования в Angular 6? .angular-cli.json похоже, изменился на angular.json из предыдущих версий, а вместе с ним и структура json внутри.

Как/где в этом файле я указываю среды для использования?

Ответ 1

Откройте файл angular.json. мы можем увидеть конфигурации по умолчанию, они будут показаны для производства, добавьте фрагмент кода для ваших соответствующих сред. добавьте файл environment.dev.ts в среду для dev, добавьте environment.qa.ts для qa. Назовите, как вам было угодно. использование

 ng serve --configuration=environment_name

environment_name - (dev, qa, prod), тот же процесс может выполняться для сборки ng

"configurations": {
        "production": {
          "fileReplacements": [
            {
              "replace": "src/environments/environment.ts",
              "with": "src/environments/environment.prod.ts"
            }
          ],
          "optimization": true,
          "outputHashing": "all",
          "sourceMap": false,
          "extractCss": true,
          "namedChunks": false,
          "aot": true,
          "extractLicenses": true,
          "vendorChunk": false,
          "buildOptimizer": true
        },
        "dev": {
          "fileReplacements": [
            {
              "replace": "src/environments/environment.ts",
              "with": "src/environments/environment.dev.ts"
            }
          ],
          "optimization": true,
          "outputHashing": "all",
          "sourceMap": true,
          "extractCss": true,
          "namedChunks": false,
          "aot": true,
          "extractLicenses": true,
          "vendorChunk": false,
          "buildOptimizer": true
        },
        "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
        }
      }

Ответ 2

Я попробовал ответить, чтобы добавить новую конфигурацию "test" в моем приложении Angular 6, затем запустил

ng serve --configuration=test

И получил сообщение об ошибке "Тест конфигурации" не удалось найти в проекте. Посмотрите вниз в файл angular.json и еще один раздел под "build", который называется "служить". Новая конфигурация должна быть добавлена в раздел конфигурации под "службой", чтобы также обеспечить работу с ней:

"serve": {
      "builder": "@angular-devkit/build-angular:dev-server",
      "options": {
        "browserTarget": "my-app:build"
      },
      "configurations": {
        "production": {
          "browserTarget": "my-app:build:production"
        },
        "test": {
          "browserTarget": "my-app:build:test"
        }
      }
    },

Ответ 3

В angular.json есть свойство указать, какой файл использовать в dev и prod, и, как обычно, вы импортируете environment.ts в свой проект, чтобы получить то, что вам нужно.

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