Проблема с окружающей средой в Angular при попытке сборки - PullRequest
0 голосов
/ 05 мая 2020

Когда я пытаюсь создать проект Angular, у меня возникает следующая проблема:

Файл '/angular/src/environments/environment.ts' не является модулем

Я импортирую файл следующим образом:

import { environment } from '../../environments/environment';

Мой tsconfig.json:

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}

В моей папке среды у меня есть файлы: environment.ts, environment.prod.ts, environment.dev.ts.

Я использую NODE_VERSION = 10, NG_CLI_VERSION = 8

My angular. json, build.configurations для dev:

"dev": {
          "optimization": true,
          "outputHashing": "all",
          "sourceMap": false,
          "extractCss": true,
          "namedChunks": false,
          "aot": true,
          "extractLicenses": true,
          "vendorChunk": false,
          "buildOptimizer": true,
          "serviceWorker": true
        }

Command для сборки: "build": "ng build --configuration=dev --aot",

Помогите, пожалуйста. Заранее спасибо!

1 Ответ

0 голосов
/ 05 мая 2020

Angular по умолчанию настраивает только производственную среду angular.json для замены файла environement.ts. Он использует эту часть angular.json.

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

Не для использования разработчиками environment.dev.ts, вам также необходимо добавить часть fileReplacements в сборку dev.

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

Или поместите конфигурацию разработчика в конфигурацию без постфикса.

...