ng-lazyload-image: Cannot read property 'kind' of undefined - Angular 7 Universal application

Installed yesterday ng-lazyload-image and getting an error:

ERROR in ./node_modules/ng-lazyload-image/fesm5/ng-lazyload-image.js
Module build failed (from ./node_modules/@angular-devkit/build-optimizer/src/build-optimizer/webpack-loader.js):
TypeError: Cannot read property 'kind' of undefined
    at isAngularDecoratorMetadataExpression (C:\Users\Denis\Desktop\Projects\VPWebsite\node_modules\@angular-devkit\build-optimizer\src\transforms\scrub-file.js:265:35)
    at checkNodeForDecorators (C:\Users\Denis\Desktop\Projects\VPWebsite\node_modules\@angular-devkit\build-optimizer\src\transforms\scrub-file.js:77:21)
    at visitNodes (C:\Users\Denis\Desktop\Projects\VPWebsite\node_modules\@angular-devkit\build-optimizer\node_modules\typescript\lib\typescript.js:16144:30)
    at Object.forEachChild (C:\Users\Denis\Desktop\Projects\VPWebsite\node_modules\@angular-devkit\build-optimizer\node_modules\typescript\lib\typescript.js:16370:24)

when run

ng build --prod

but looks good with ng serve

Could you help, I have been fighting with it for more than one day.

My dependencies just in case:

"dependencies": {
  "@angular/animations": "6.1.10",
  "@angular/cdk": "6.4.7",
  "@angular/common": "7.2.13",
  "@angular/compiler": "7.2.13",
  "@angular/core": "7.2.13",
  "@angular/forms": "7.2.13",
  "@angular/http": "7.2.13",
  "@angular/material": "6.4.7",
  "@angular/platform-browser": "7.2.13",
  "@angular/platform-browser-dynamic": "7.2.13",
  "@angular/platform-server": "7.2.13",
  "@angular/router": "7.2.13",
  "@ng-bootstrap/ng-bootstrap": "4.1.1",
  "@ng-select/ng-select": "2.17.0",
  "@ng-toolkit/pwa": "7.1.1",
  "@ng-toolkit/universal": "7.1.1",
  "@ngneat/content-loader": "^4.1.0",
  "@nguniversal/express-engine": "7.1.1",
  "@nguniversal/module-map-ngfactory-loader": "7.1.1",
  "@ngx-meta/core": "7.0.0",
  "@swimlane/ngx-charts": "^12.0.1",
  "ajv-keywords": "3.4.0",
  "angular2-yandex-maps": "1.0.42",
  "bootstrap": "4.3.1",
  "core-js": "2.6.5",
  "crypto": "1.0.1",
  "crypto-js": "^3.1.9-1",
  "ejs": "^1.0.0",
  "et-line": "1.0.1",
  "express": "^4.16.4",
  "font-awesome": "4.7.0",
  "fs": "0.0.1-security",
  "http": "0.0.0",
  "jquery": "3.4.0",
  "jsencrypt": "^3.0.0-rc.1",
  "mock-browser": "^0.92.14",
  "moment": "2.24.0",
  "net": "1.0.2",
  "ng-lazyload-image": "^7.1.0",
  "ng-sidebar": "8.0.0",
  "ng5-slider": "1.1.14",
  "ngx-daterangepicker-material": "1.3.4",
  "ngx-mat-daterange-picker": "1.1.4",
  "ngx-owl-carousel": "2.0.7",
  "owl.carousel": "2.3.4",
  "path": "0.12.7",
  "popper.js": "1.15.0",
  "rxjs": "6.4.0",
  "rxjs-compat": "6.4.0",
  "stream": "0.0.2",
  "webpack-bundle-analyzer": "3.3.2",
  "zlib": "1.0.5",
  "zone.js": "0.8.29"
},
"devDependencies": {
  "@angular-devkit/build-angular": "0.13.9",
  "@angular/cli": "7.3.8",
  "@angular/compiler-cli": "7.2.13",
  "@angular/language-service": "7.2.13",
  "@types/jasmine": "2.8.16",
  "@types/jasminewd2": "2.0.3",
  "@types/node": "8.9.4",
  "codelyzer": "4.5.0",
  "http-server": "0.11.1",
  "jasmine-core": "2.99.1",
  "jasmine-spec-reporter": "4.2.1",
  "karma": "^4.3.0",
  "karma-chrome-launcher": "2.2.0",
  "karma-coverage-istanbul-reporter": "2.0.5",
  "karma-jasmine": "1.1.2",
  "karma-jasmine-html-reporter": "0.2.2",
  "protractor": "5.4.2",
  "ts-loader": "5.3.3",
  "ts-node": "7.0.0",
  "tslint": "5.11.0",
  "typescript": "3.1.1",
  "webpack-cli": "3.3.0"
}

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 28 (9 by maintainers)

Most upvoted comments

@Denis-Evseev, can you try to downgrade this lib to version 7.0.1 (by just setting edit:

- "ng-lazyload-image": "^7.1.0",
+ "ng-lazyload-image": "7.0.1",

and run npm install again?)

I just want to know if this issue was introduced in the latest version or if it was in an earlier version

@jmelich I migrated to Angular 8 today for 30 mins! Lazy loading works like charm now! Used: https://medium.com/better-programming/upgrade-to-angular-8-beta-within-10-minutes-cd831fb8dd0e

I’ve downgraded lazy-image to 6.0.1 and now works. Before it I tried to upgrade typescript version with no result given highest allowed version for my project was 3.3.0 given I’m on angular7 and I’m not currently interested in upgrading to angular8.

ERROR in The Angular Compiler requires TypeScript >=3.1.1 and ❤️.3.0 but 3.8.3 was found instead.