TypeError: Невозможно прочитать свойство 'ngInjectableDef' из неопределенного - PullRequest
0 голосов
/ 15 апреля 2020

В настоящее время я работаю над приложением, которое работает нормально, внезапно я получаю эту ошибку. Ничего не изменилось, за исключением того, что мы работали над Angular 8, а другой разработчик использовал Angular 9. После слияния кода эта ошибка начала появляться случайным образом.

Я удалил папку node_modules и запустил npm cache clean --force и выполнил установку fre sh npm, но все еще получал эту ошибку. Любая помощь с благодарностью.

Ошибка:

ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'ngInjectableDef' of undefined
TypeError: Cannot read property 'ngInjectableDef' of undefined
    at getInjectableDef (core.js:361)
    at resolveNgModuleDep (core.js:30377)
    at NgModuleRef_.get (core.js:31578)
    at injectInjectorOnly (core.js:734)
    at ɵɵinject (core.js:744)
    at injectArgs (core.js:837)
    at core.js:16346
    at _callFactory (core.js:30486)
    at _createProviderInstance (core.js:30429)
    at resolveNgModuleDep (core.js:30388)
    at resolvePromise (zone-evergreen.js:797)
    at resolvePromise (zone-evergreen.js:754)
    at zone-evergreen.js:858
    at ZoneDelegate.invokeTask (zone-evergreen.js:391)
    at Object.onInvokeTask (core.js:39680)
    at ZoneDelegate.invokeTask (zone-evergreen.js:390)
    at Zone.runTask (zone-evergreen.js:168)
    at drainMicroTaskQueue (zone-evergreen.js:559)
    at ZoneTask.invokeTask [as invoke] (zone-evergreen.js:469)
    at invokeTask (zone-evergreen.js:1603)

1 Ответ

0 голосов
/ 16 апреля 2020

Помимо других ответов, которые уже есть на SO, я публикую свои выводы, так как это может помочь кому-то еще в будущем.

Один из других разработчиков удалил служебный файл из приложения и проверил Код в. Мы слились, все было хорошо.

ng build --prod прошло нормально

ng serve отлично справилось с приложением

Приложение работало, но эта проблема возникла, когда мы перешли к компоненту, на который этот файл все еще ссылался и получать инъекцию в конструкторе. Visual Studio 2019 не выдавал ошибок, поэтому это было немного странно.

Вероятно, это редкий сценарий, поскольку никто не собирается много удалять файлы, но надеется, что это поможет другим в случае, если они столкнутся с этим сценарием.

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