Tengo miles de este error después de la implementación inicial y escribir en el terminal ng serve my-app de y no puedo resolverlo. Esta es la primera vez para mí cuando tengo un problema como este dentro de angular con errores de mecanografía que se ve así:
ERROR en ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:24:19 - error TS1086: No se puede declarar un descriptor de acceso en un contexto ambiental.
24 protected get parentElement(): HTMLElement | null; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19
- error TS1086: no se puede declarar un descriptor de acceso en un contexto ambiental.
26 protected get nativeElement(): HTMLElement; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9
- error TS1086: no se puede declarar un descriptor de acceso en un contexto ambiental.
28 get activatedValue(): string; ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9
- error TS1086: no se puede declarar un descriptor de acceso en un contexto ambiental.
29 set activatedValue(value: string); ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:20:9
- error TS1086: no se puede declarar un descriptor de acceso en un contexto ambiental.
[...]
¿Alguien sabe alguna razón? No puedo probar mi aplicación hasta que la arregle.
Actualización 1
Bien, lo hago hacia adelante. La mayoría de los errores se han ido, pero ahora tengo algunos, por ejemplo, el primero de ellos:
ERROR en src / app / main / main.component.ts: 143: 63 - error TS2322: Escriba 'string | undefined 'no es asignable para escribir' string '. El tipo 'undefined' no es asignable para escribir 'string'.
143 this.fileService.add ({isFolder: true, name: folder.name, parent: this.currentRoot? This.currentRoot.id: 'root'});
El código se ve así:
main.component.ts:
currentRoot: MpFileElement = new MpFileElement();
...
addFolder(folder: { name: string }) {
this.fileService.add({ isFolder: true, name: folder.name, parent:
this.currentRoot ? this.currentRoot.id : 'root' });
this.updateFileElementQuery();
}
...
file.service.ts:
import { Injectable } from '@angular/core';
import { v4 } from 'uuid';
import { MpFileElement } from '../models/mp-file-element.model';
import { Observable } from 'rxjs/internal/Observable';
import { BehaviorSubject } from 'rxjs';
export interface IFileService {
add(fileElement: MpFileElement);
delete(id: string);
update(id: string, update: Partial<MpFileElement>);
queryInFolder(folderId: string): Observable<MpFileElement[]>;
get(id: string): MpFileElement;
}
@Injectable()
export class MpFileService implements IFileService {
constructor() {}
private map = new Map<string, MpFileElement>()
private querySubject: BehaviorSubject<MpFileElement[]>;
add(fileElement: MpFileElement) {
fileElement.id = v4();
this.map.set(fileElement.id, this.clone(fileElement));
return fileElement;
}
delete(id: string) {
this.map.delete(id);
}
update(id: string, update: Partial<MpFileElement>) {
let element = this.map.get(id);
element = Object.assign(element, update);
this.map.set(element.id, element);
}
queryInFolder(folderId: string) {
const result: MpFileElement[] = [];
this.map.forEach(element => {
if (element.parent === folderId) {
result.push(this.clone(element));
}
})
if (!this.querySubject) {
this.querySubject = new BehaviorSubject(result);
} else {
this.querySubject.next(result);
}
return this.querySubject.asObservable();
}
get(id: string) {
return this.map.get(id);
}
clone(element: MpFileElement) {
return JSON.parse(JSON.stringify(element));
}
}
fuente
9.0.0-beta.28
de @ angular / flex-layout? Intentaría volver a la versión anterior antes de que se toparan con la versión TS.Respuestas:
Tuve este mismo problema, y estos 2 comandos me salvaron la vida. Mi problema subyacente es que siempre me estoy equivocando con la instalación global y la instalación local. Tal vez se enfrenta a un problema similar y, con suerte, ejecutar estos comandos también resolverá su problema.
fuente
Establecer
"skipLibCheck": true
entsconfig.json
resuelto mi problemafuente
Tuve el mismo problema al agregar @ angular / flex-layout a mi proyecto Angular 8 ahora con
Esto desde ahora ese comando instaló la novena versión principal del paquete de diseño flexible. En lugar de actualizar todo lo demás a la última versión, lo resolví instalando la última octava versión principal del paquete .
fuente
Parece que ha instalado recientemente el paquete de diseño flexible. Intente eliminar esta carpeta del paquete de su carpeta node_modules y reinstale la versión anterior de este paquete.
Recientemente (2 días antes de la fecha actual), angular lanzó la última versión angular-cli (v9.0.1) debido a que muchos paquetes se actualizan para admitir esta última versión cli. En su caso, es posible que tenga una versión antigua de cli y, cuando instaló este paquete, se descargó para la última versión de cli de forma predeterminada. Así que intente degradar la versión de su paquete. Al menos me funcionó.
Además, no olvide degradar la versión de su paquete en el archivo package.json
fuente
tratar
Luego, solo para sincronizar material, ejecute:
fuente
En mi caso, degradar @ angular / animaciones funcionó, si puedes permitirte hacer eso, ejecuta el comando
O use otra versión que pueda funcionar para usted desde la pestaña Versiones aquí: https://www.npmjs.com/package/@angular/animations
fuente
Solución rápida: Actualizar package.json
En tsconfig.json
luego elimine la carpeta node_modules y vuelva a instalar con
Para más visita aquí
fuente
esta es una breve respuesta que espero ayudar
Intente degradar la CLI Agular y Angular a la v8, creo que su problema es un problema de compatibilidad de paquetes
fuente
Creo que su problema surgió de la falta de coincidencia de la versión del módulo y del mecanografiado. Este problema es muy similar a su pregunta y las respuestas son muy satisfactorias.
fuente