angular-material-fileupload icon indicating copy to clipboard operation
angular-material-fileupload copied to clipboard

NullInjectorError: No provider for ElementRef! -- Angular 8

Open dvk2591 opened this issue 5 years ago • 7 comments

NullInjectorError: StaticInjectorError(AppModule)[FileUploadInputFor -> ElementRef]: StaticInjectorError(Platform: core)[FileUploadInputFor -> ElementRef]: NullInjectorError: No provider for ElementRef! NullInjectorError: StaticInjectorError(AppModule)[FileUploadInputFor -> ElementRef]: StaticInjectorError(Platform: core)[FileUploadInputFor -> ElementRef]: NullInjectorError: No provider for ElementRef! at NullInjector.get (core.js:778) at resolveToken (core.js:2564) at tryResolveToken (core.js:2490) at StaticInjector.get (core.js:2353) at resolveToken (core.js:2564) at tryResolveToken (core.js:2490) at StaticInjector.get (core.js:2353) at resolveNgModuleDep (core.js:26403) at NgModuleRef_.get (core.js:27491) at resolveDep (core.js:28021) 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:34182) 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)

My package.json file:

{ "name": "", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "^8.1.2", "@angular/cdk": "^8.1.1", "@angular/common": "~8.1.2", "@angular/compiler": "~8.1.2", "@angular/core": "^8.1.2", "@angular/forms": "~8.1.2", "@angular/material": "^8.1.1", "@angular/platform-browser": "~8.1.2", "@angular/platform-browser-dynamic": "~8.1.2", "@angular/router": "~8.1.2", "angular-material-fileupload": "^2.0.0", "core-js": "^2.5.4", "rxjs": "~6.5.2", "tslib": "^1.9.0", "zone.js": "~0.9.1" }, "devDependencies": { "@angular-devkit/build-angular": "~0.801.2", "@angular/cli": "~8.1.2", "@angular/compiler-cli": "~8.1.2", "@angular/language-service": "~8.1.2", "@types/node": "~8.9.4", "@types/jasmine": "~2.8.8", "@types/jasminewd2": "~2.0.3", "codelyzer": "^5.0.1", "jasmine-core": "~2.99.1", "jasmine-spec-reporter": "~4.2.1", "karma": "~3.1.1", "karma-chrome-launcher": "~2.2.0", "karma-coverage-istanbul-reporter": "~2.0.1", "karma-jasmine": "~1.1.2", "karma-jasmine-html-reporter": "^0.2.2", "protractor": "~5.4.0", "ts-node": "~7.0.0", "tslint": "~5.11.0", "typescript": "~3.4.5" } }

Please help me with this.

dvk2591 avatar Jul 19 '19 19:07 dvk2591

Same issue on Angular 8 ERROR NullInjectorError: StaticInjectorError(AppModule)[FileUploadInputFor -> ElementRef]: StaticInjectorError(Platform: core)[FileUploadInputFor -> ElementRef]: NullInjectorError: No provider for ElementRef!

ozzpy avatar Sep 02 '19 18:09 ozzpy


     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/
    

Angular CLI: 8.1.3
Node: 10.16.0
OS: linux x64
Angular: 8.1.3
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.801.3
@angular-devkit/build-angular     0.801.3
@angular-devkit/build-optimizer   0.801.3
@angular-devkit/build-webpack     0.801.3
@angular-devkit/core              8.1.3
@angular-devkit/schematics        8.1.3
@angular/cdk                      8.1.4
@angular/material                 8.1.4
@ngtools/webpack                  8.1.3
@schematics/angular               8.1.3
@schematics/update                0.801.3
rxjs                              6.4.0
typescript                        3.4.5
webpack                           4.35.2

Same issue. Looks like we need the component.ts file in the demo.

ng:///AppModule/UploaderComponent.ngfactory.js:21 ERROR NullInjectorError: StaticInjectorError(AppModule)[FileUploadInputFor -> ElementRef]: 
  StaticInjectorError(Platform: core)[FileUploadInputFor -> ElementRef]: 
    NullInjectorError: No provider for ElementRef!
    at NullInjector.get (http://localhost:4200/vendor.js:64030:27)
    at resolveToken (http://localhost:4200/vendor.js:65816:24)
    at tryResolveToken (http://localhost:4200/vendor.js:65742:16)
    at StaticInjector.get (http://localhost:4200/vendor.js:65605:20)
    at resolveToken (http://localhost:4200/vendor.js:65816:24)
    at tryResolveToken (http://localhost:4200/vendor.js:65742:16)
    at StaticInjector.get (http://localhost:4200/vendor.js:65605:20)
    at resolveNgModuleDep (http://localhost:4200/vendor.js:89655:29)
    at NgModuleRef_.get (http://localhost:4200/vendor.js:90743:16)
    at resolveDep (http://localhost:4200/vendor.js:91273:45)

zzj0402 avatar Sep 03 '19 06:09 zzj0402

Do we have any updates on this issue? Did you found a workaround for this problem?

emanuelbadaceanu avatar Sep 25 '19 10:09 emanuelbadaceanu

Since angular 8 @ViewChild has 2 parameters, e.g @ViewChild('fileUploadQueue', {static: false}) fileUploadQueue: ElementRef;

I don't have any solution to this... Author must change all ViewChilds and add second param

pzdunek avatar Sep 25 '19 22:09 pzdunek

Any progress?

DarkFIxED avatar Nov 28 '19 11:11 DarkFIxED

So this doesn't work with Angular 9 I suppose?

kovinet avatar Mar 14 '20 10:03 kovinet

how to solve the problem?

qiuren2017 avatar Apr 13 '20 14:04 qiuren2017