Sto cercando di utilizzare @ angular / material nella mia app e si sta compilando correttamente, tuttavia sto ottenendo il seguente errore:
webpack: Compiled successfully.
ERROR in node_modules/@angular/material/button-toggle/typings/button-toggle.d.ts(136,20): error TS2315: Type "ElementRef" is not generic.
node_modules/@angular/material/button-toggle/typings/button-toggle.d.ts(154,104): error TS2315: Type "ElementRef" is not generic.
node_modules/@angular/material/slide-toggle/typings/slide-toggle.d.ts(53,15): error TS2315: Type "ElementRef" is not generic.
node_modules/@angular/material/slide-toggle/typings/slide-toggle.d.ts(55,18): error TS2315: Type "ElementRef" is not generic.
Questo non sembra essere un problema comune, qualcuno ha idea di come risolvere?
usando:
Angular CLI: 1.7.4
Node: 8.11.1
OS: win32 x64
Angular: 5.2.10
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router
@angular/cdk: 6.0.0-rc.14-29bf024
@angular/cli: 1.7.4
@angular/material: 6.0.0-rc.14-29bf024
@angular-devkit/build-optimizer: 0.3.2
@angular-devkit/core: 0.3.2
@angular-devkit/schematics: 0.3.2
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.2
@schematics/angular: 0.3.2
@schematics/package-update: 0.3.2
typescript: 2.5.3
webpack: 3.11.0
risposte:
7 per risposta № 1Stai usando @angular/material
e @angular/cdk
Versioni 6RC (6.0.0-rc.14-29bf024)
, che probabilmente dipende dalla versione 6 di Angular.
O declassare il @angular/material
pacchetto all'ultima versione stabile (se si sta costruendo direttamente per la produzione) o provare ad aggiornare angolare a 6.0.0-rc.6
versione (se stai mirando al tuo rilascio dopo l'uscita della scuderia 6 angolare).
3 per risposta № 2
npm uninstall @angular/material --save
npm install @angular/material@5.2.4 --save
Ha funzionato per me.
La versione angolare è 5.2.1
.
0 per risposta № 3
È un problema delle dipendenze, è necessario reinstallare le dipendenze.
In package.json abbina la tua versione angolare con "@ angular / material", dovrebbe essere simile. Quindi corri
npm install
0 per risposta № 4
Avevamo lo stesso problema. L'aggiornamento di Angular a 6 non è ancora un'opzione per noi, poiché abbiamo una dipendenza che non supporta nulla rispetto ad Angular 5 (attualmente ripensando a tale dipendenza). Portare materiale fino alla versione 5 era un'opzione, ma non ideale, perché il motivo per cui siamo andati a 6 è stato risolto un bug piuttosto sgradevole nelle schede dei materiali.
Ciò che ha funzionato per noi è stato l'aggiornamento del Nodo all'8.10. Non sono sicuro del perché sia stato risolto, ma è stato così.
Spero che sia d'aiuto.