Когда я обновил Angular с 7 до Angular 8, я получил ошибку при ленивой загрузке модулей.
Я пробовал варианты, которые есть в руководстве по обновлению angular
Внесены следующие изменения:
Перед
loadChildren: '../feature/path/sample-
tage.module#SameTagModule'
После
loadChildren: () => import('../feature/path/sample-
tags.module').then(m => m.CreateLinksModule)
ошибка TS1323: динамический импорт поддерживается, только если флаг --module - commonjs или esNext.
javascript
angular
typescript
module
angular8
RajuPedda
источник
источник
ng new
не использует это по умолчанию. Есть причина?"module": "es2015"
строку из моегоtsconfig.app.json
файла"module": "esnext"
тоже.Просто добавив к @Tony anwser, вам также может потребоваться сделать то же самое (изменить на "module": "esnext") в tsconfig.app.json. В моем случае tsconfig.json уже использовал esnext в качестве модуля, но tsconfig.app.json все еще использовал es2015, что и вызвало эту ошибку.
источник
Просто хочу добавить свой опыт к ответу @Tony. После изменения
tsconfig.json
все еще показывал ошибку (красное подчеркивание). Только после повторного открытия редактора (я использовал VSCode) я увидел, что красная линия подчеркивания исчезла.источник
Я думаю, что правильный способ сделать это - это отрегулировать,
tsconfig.app.json
а неtsconfig.json
.tsconfig.app.json
tsconfig.app.json
- это файл конфигурации Typescript, относящийся к приложению, которое находится под корнем рабочего пространства Angular . Онtsconfig.app.json
существует таким образом, что если вы создаете рабочее пространство Angular, в котором есть несколько приложений, вы можете настроить конфигурацию Typescript отдельно для каждого приложения без необходимости писать избыточные свойства конфигурации, которые перекрываются между приложениями (отсюда иextends
свойство).Технически в этом нет необходимости
tsconfig.app.json
. Если вы удалите его, вам нужно будет поместить"module": "esnext"
вtsconfig.json
. Если вы оставите его там, он будет иметь приоритетtsconfig.json
, поэтому вам нужно только добавить"module":"esnext"
строкуtsconfig.app.json
.источник
Я устраняю эту ошибку, выполнив следующие шаги шаг 1: от «module»: «es2015» до «module»: «AMD» в tsconfig.json
Шаг 2: создайте новый файл tsconfig.app.json в корневом каталоге приложения, скопируйте код Тони Нго и вставьте его, тогда эта проблема будет решена.
источник