Производственная сборка не может найти информацию о среде, но dev собирает без ошибок - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть приложение angular 7, которое при сборке в режиме разработки компилируется и обслуживается без ошибок.Но когда я создаю приложение с производственными настройками, оно компилируется без проблем, но не может найти информацию об окружающей среде и просто ошибки в браузере.

vendor.d1094f98a9a59a44ad59.js:1 ERROR ReferenceError: env is not defined
    at new n (main.04dfe8e133fc5e316d84.js:1)
    at Vs (vendor.d1094f98a9a59a44ad59.js:1)
    at Ms (vendor.d1094f98a9a59a44ad59.js:1)
    at mu (vendor.d1094f98a9a59a44ad59.js:1)
    at hu (vendor.d1094f98a9a59a44ad59.js:1)
    at Object.Du [as createRootView] (vendor.d1094f98a9a59a44ad59.js:1)
    at e.create (vendor.d1094f98a9a59a44ad59.js:1)
    at e.create (vendor.d1094f98a9a59a44ad59.js:1)
    at t.bootstrap (vendor.d1094f98a9a59a44ad59.js:1)
    at vendor.d1094f98a9a59a44ad59.js:1
mi @ vendor.d1094f98a9a59a44ad59.js:1
vendor.d1094f98a9a59a44ad59.js:1 ERROR Error: Uncaught (in promise): ReferenceError: env is not defined
ReferenceError: env is not defined
    at new n (main.04dfe8e133fc5e316d84.js:1)
    at Vs (vendor.d1094f98a9a59a44ad59.js:1)
    at Ms (vendor.d1094f98a9a59a44ad59.js:1)
    at mu (vendor.d1094f98a9a59a44ad59.js:1)
    at hu (vendor.d1094f98a9a59a44ad59.js:1)
    at Object.Du [as createRootView] (vendor.d1094f98a9a59a44ad59.js:1)
    at e.create (vendor.d1094f98a9a59a44ad59.js:1)
    at e.create (vendor.d1094f98a9a59a44ad59.js:1)
    at t.bootstrap (vendor.d1094f98a9a59a44ad59.js:1)
    at vendor.d1094f98a9a59a44ad59.js:1
    at M (polyfills.65f19a590318fc6860f7.js:1)
    at polyfills.65f19a590318fc6860f7.js:1
    at t.invokeTask (polyfills.65f19a590318fc6860f7.js:1)
    at Object.onInvokeTask (vendor.d1094f98a9a59a44ad59.js:1)
    at t.invokeTask (polyfills.65f19a590318fc6860f7.js:1)
    at e.runTask (polyfills.65f19a590318fc6860f7.js:1)
    at g (polyfills.65f19a590318fc6860f7.js:1)

Сборка в режиме разработки работает как задумано.Не уверен, почему производство отличается.В терминале нет ошибок.

Ожидаемая сборка prod должна соответствовать dev build

Ответы [ 2 ]

0 голосов
/ 18 февраля 2019

Это было ошибочное утверждение:

import { environment as env } from '@env/environment';

Чтобы исправить ошибку, просто удалите псевдоним и обновите эту строку (и любую ссылку) до:

import { environment } from '@env/environment';

Кто-нибудь знает, почему использование синтаксиса as env вызвало эту проблему?

0 голосов
/ 18 февраля 2019

Похоже, что-то происходит с вашим environment.prod.ts файлом в environments/environment.prod.ts, убедитесь, что он соответствует вашему environment.ts файлу.При сборке с помощью prod environment.prod.ts заменяет environment.ts.Посмотрите на названия в двух файлах, похоже, что в вашем environment.prod.ts вы можете иметь

export const environment = {
    production: true,
    etc...
}

вместо

export const env = {
    production: true,
    etc...
}

Похоже, это ошибка из приглашения,http://tattoocoder.com/angular-cli-using-the-environment-option/ - это хороший URL для лучшего знакомства с окружающими средами.

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