Файл пользовательской среды Ionic 4 - PullRequest
0 голосов
/ 27 сентября 2019

Я работаю с проектом Ionic 4.У меня есть различные среды (test, testB, prob, dev ecc ..).Я создал все файлы в папке среды: environment.dev.ts, environment.testA.ts, environment.testB.ts и т. Д. Есть ли способ установить правильную среду при создании или обслуживании (в браузере) проект (может быть что-то вроде --env = testA, как angular?)?Единственное, что я могу найти - это --prod, который предназначен только для производственной среды, но в этом случае у меня более двух сред.

Ответы [ 2 ]

2 голосов
/ 27 сентября 2019

Вам следует проверить файл package.json.
Мой package.json выглядит следующим образом:

  "name": "name",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build --prod",
    "test": "ng test",
   "lint": "ng lint",
   "e2e": "ng e2e",
   "build-prod": "ng build --prod --progress false",
   "build-dev": "ng build --env=dev --aot=true --output-hashing=all --sourcemaps=false --extract-css=true --named-chunks=false --build-optimizer=true --progress false",
   "build-preprod": "ng build --env=preprod --aot=true --output-hashing=all --sourcemaps=false --extract-css=true --named-chunks=false --build-optimizer=true --progress false",
   "build-dev2": "ng build --env=dev2 --aot=true --output-hashing=all --sourcemaps=false --extract-css=true --named-chunks=false --build-optimizer=true --progress false"
},

В angular-cli.json есть ключ среды:

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

В Angular 8 вы должны проверить angular.json:

"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,
          "budgets": [
            {
              "type": "initial",
              "maximumWarning": "2mb",
              "maximumError": "5mb"
            },
            {
              "type": "anyComponentStyle",
              "maximumWarning": "6kb",
              "maximumError": "10kb"
            }
          ]
        }, "preprod": {
          "fileReplacements": [
            {
              "replace": "src/environments/environment.ts",
              "with": "src/environments/environment.preprod.ts"
            }
          ],
          "optimization": true,
          "outputHashing": "all",
          "sourceMap": false,
          "extractCss": true,
          "namedChunks": false,
          "aot": true,
          "extractLicenses": true,
          "vendorChunk": false,
          "buildOptimizer": true,
          "budgets": [
            {
              "type": "initial",
              "maximumWarning": "2mb",
              "maximumError": "5mb"
            },
            {
              "type": "anyComponentStyle",
              "maximumWarning": "6kb",
              "maximumError": "10kb"
            }
          ]
        }
      }
    },
0 голосов
/ 27 сентября 2019

Я решил после некоторого тестирования!Решение для Ionic 4:

  1. Создайте все необходимые файлы с переменными среды в папке src / сред .Пример environment.live.ts, environment.test1.ts, environment.test2.ts и т. Д.
  2. Обновление angular.js файла в корневой папке;

      "configurations": {
           "production": { ... } // already there for production
           // Add for your custon environments files here
           "testA": {
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.testa.ts" //Name of your file
                }
              ]
           } ... // Do this for every environment on every build you need
      }
    
  3. Импортируйте файл среды внутри вашего проекта, где вам нужно:

    импорт {среды} из '../../environments/environment';

  4. Чтобы выбрать другую среду при сборке или обслуживании: ионная подача - -c = testA та же логика для сборки и т. Д. ... Это автоматически заменит файл средыс правильным, в данном случае с файлом, связанным со средой testA .

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