Angular 9 Ivy - универсальный тип 'actFactoryDef' требует 2 аргументов типа


17

Похоже, угловой Плющ еще не готов. Я пытаюсь построить свой проект, используя ivy, что является основной идеей Angular 9. Многие из библиотек не совместимы с этой функцией, одна из этих библиотек @angular/flex-layout. У материального и обслуживающего персонала такая же проблема.

После использования ng build --prod --aot -c=productionскрипта для создания моего проекта я получил:

                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/core/typings/media-trigger/media-trigger.d.ts:71:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s).

71     static ɵfac: ɵngcc0.ɵɵFactoryDef<MediaTrigger>;
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/extended/typings/show-hide/show-hide.d.ts:18:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s).

18     static ɵfac: ɵngcc0.ɵɵFactoryDef<ShowHideStyleBuilder>;
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/extended/typings/show-hide/show-hide.d.ts:49:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s).

49     static ɵfac: ɵngcc0.ɵɵFactoryDef<ShowHideDirective>;

Ошибка дольше, чем я написал выше, я потратил время на хороший поиск этой проблемы, ничего на столе, кроме отключения плюща, который не является хорошим вариантом.

Ответы:


13

К счастью, Angular 9.1 был выпущен, и проблема решена. После обновления до 9.1 я удалил свои node_modules и заново установил его. Затем я обновил свою машинопись с 3.7.5до 3.8.3. Теперь ngcc работает нормально, и у меня нет ошибок после сборки.

Для получения дополнительной информации: Angular Version 9.1


какова ваша полная команда postinstall? это только "postinstall":"ngcc"??
Харишр

@harishr Да, это "ngcc", если вы обновляетесь, не используйте точку входа. Просто оставайтесь с ngcc
Язан Мехрез

Я все еще сталкиваюсь с проблемой ... пришлось вернуться к 9.0.5, чтобы решить проблему
харишр

1
да, я сделал это ... я обновил машинопись все остальные пакеты. удалил node_modules и сменил все, но все равно получаю ту же ошибку, о которой вы упоминали в своем вопросе. Нужно ли очищать глобальный кеш?
Харишр

1
Да, удаление node_modules и npm cache verifyсделало свое дело для меня
Mattijs
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.