Обнаружена ошибка в метаданных, созданных для экспортированного символа. Не удалось разрешить тип T - PullRequest
0 голосов
/ 15 марта 2020

Здравствуйте, я пытаюсь обновить angular пакетов для библиотеки Акита .

Однако я получаю очень криптовую c ошибку при сборке после обновления.

Compiling TypeScript sources through ngc
ERROR: /home/runner/work/akita/akita/libs/akita-ng-forms-manager/src/lib/forms-manager.store.ts:3:1: Error encountered in metadata generated for exported symbol 'FormsStore': 
 /home/runner/work/akita/akita/libs/akita-ng-forms-manager/src/lib/forms-manager.store.ts:7:22: Metadata collected contains an error that will be reported at runtime: Could not resolve type T.
  {"__symbolic":"error","message":"Could not resolve type","line":6,"character":21,"context":{"typeName":"T"}}

Журнал ошибок

, поэтому в основном

Обнаружена ошибка в метаданных, созданных для экспортированного символа 'FormsStore ': Собранные метаданные содержат ошибку, о которой будет сообщено во время выполнения: не удалось разрешить тип T.

Все, что мне удалось найти, это https://github.com/ng-packagr/ng-packagr/issues/641, которое в принципе говорит, что я должен добавить // @dynamic выше классов, которые имеют static вещи в них. У меня ничего нет static, и добавление // @dynamic не решило проблему.

Мне удалось продвинуться вперед, так как я могу скомпилировать, когда Ivy включен.

"angularCompilerOptions": {
  "enableIvy": true
}

Но оставлять Ivy включенным нельзя, так как не рекомендуется публиковать sh библиотеки Ivy в NPM репозиториях.

Вот соответствующие файлы

Спасибо за ваше время

...