ERROR in node_modules/@angular/cdk/coercion/array.d.ts(10,60): error TS1005: ‘,’ expected.

ALTRO, APPUNTI, SOLUZIONI

Oggi ho perso un pò di tempo ad inizializzare un progetto Angular con Angular Material  — Material Design For Angular. Operazione apparentemente semplice, sempre che non ti imbatti in un imprevisto… che ovviamente è arrivato, infatti dopo avere inizializzato il mio progetto Angular con il classico comando:

ng new <mioprogetto>

ho provato ad installare material:

ng add @angular/material

ma avviando il progetto con :

ng serve

mi sono scontrato con il seguente errore.

 ERROR in node_modules/@angular/cdk/coercion/array.d.ts(10,60): error
 TS1005: ',' expected.
 node_modules/@angular/cdk/coercion/array.d.ts(10,61): error TS1005:
 ',' expected. node_modules/@angular/cdk/coercion/array.d.ts(10,75):
 error TS1144: '{' or ';' expected.
 node_modules/@angular/cdk/coercion/array.d.ts(10,77): error TS1011: An
 element access expression should take an argument.

Ho sbattuto la testa per un pò fin quando non ho capito che il problema era ovviamente di compatibilità di versioni.

Questo errore infatti scatta quando c’è una differenza di versione tra i pacchetti  @angular/material, @angular/cdk e @angular/core.

Quindi la cosa da fare e di aggiornare il progetto  disinstallando e reinstallando le versioni corrette ed allineate con @angular/core, nel mio caso

"@angular/core": "~7.0.0"

di seguito i comandi :

npm uninstall @angular/material
npm uninstall @angular/cdk
npm install @angular/material@7.2.0
npm install @angular/cdk@7.2.0

Comments