J'ai des milliers de cette erreur après la mise en œuvre initiale, taper dans le terminal ng mon application et je ne peux pas le résoudre. C'est la première fois pour moi quand j'ai un problème comme celui-ci à l'intérieur angulaire avec des erreurs de frappe ressemble à ceci:
ERREUR dans ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:24:19 - erreur TS1086: Un accesseur ne peut pas être déclaré dans un contexte ambiant.
24 protected get parentElement(): HTMLElement | null; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19
- erreur TS1086: Un accesseur ne peut pas être déclaré dans un contexte ambiant.
26 protected get nativeElement(): HTMLElement; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9
- erreur TS1086: Un accesseur ne peut pas être déclaré dans un contexte ambiant.
28 get activatedValue(): string; ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9
- erreur TS1086: Un accesseur ne peut pas être déclaré dans un contexte ambiant.
29 set activatedValue(value: string); ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:20:9
- erreur TS1086: Un accesseur ne peut pas être déclaré dans un contexte ambiant.
[...]
Quelqu'un connaît-il une raison? Je ne peux pas tester mon application tant que je ne l'ai pas corrigée.
Mise à jour 1
D'accord, je vais de l'avant. La plupart des erreurs ont disparu, mais j'en ai maintenant quelques-unes, par exemple la première:
ERREUR dans src / app / main / main.component.ts: 143: 63 - erreur TS2322: tapez 'chaîne | undefined 'n'est pas assignable au type' string '. Le type «non défini» n'est pas attribuable au type «chaîne».
143 this.fileService.add ({isFolder: true, nom: folder.name, parent: this.currentRoot? This.currentRoot.id: 'root'});
Le code ressemble à ceci:
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));
}
}
la source
9.0.0-beta.28
de @ angular / flex-layout? J'essaierais de revenir à la version précédente avant de heurter la version TS.Réponses:
J'ai eu ce même problème, et ces 2 commandes m'ont sauvé la vie. Mon problème sous-jacent est que je me trompe toujours avec l'installation globale et l'installation locale. Peut-être que vous êtes confronté à un problème similaire, et j'espère que l'exécution de ces commandes résoudra également votre problème.
la source
La mise
"skipLibCheck": true
en place atsconfig.json
résolu mon problèmela source
J'ai eu le même problème lors de l'ajout de @ angular / flex-layout à mon projet Angular 8 maintenant avec
Depuis, cette commande a installé la 9ème version majeure du package flex-layout. Au lieu de mettre à niveau tout le reste vers la dernière version, je l'ai résolu en installant la dernière 8e version principale du package à la place.
la source
Il semble que vous ayez récemment installé le package flex-layout. Essayez de supprimer ce dossier de package de votre dossier node_modules et de réinstaller la version précédente de ce package.
Récemment (2 jours avant la date actuelle), angular a publié la dernière version angular-cli (v9.0.1) en raison de laquelle de nombreux packages sont mis à jour pour prendre en charge cette dernière version cli. Dans votre cas, vous pourriez avoir l'ancienne version de cli et lorsque vous avez installé ce package, il a été téléchargé par défaut pour la dernière version de cli. Essayez donc de rétrograder la version de votre package. A travaillé pour moi au moins.
N'oubliez pas non plus de rétrograder la version de votre package dans le fichier package.json
la source
essayer
Ensuite, juste pour synchroniser le matériel, exécutez:
la source
Dans mon cas, la rétrogradation de @ angular / animations a fonctionné, si vous pouvez vous le permettre, exécutez la commande
Ou utilisez une autre version qui pourrait fonctionner pour vous à partir de l'onglet Versions ici: https://www.npmjs.com/package/@angular/animations
la source
Solution rapide: mettez à jour package.json
Dans tsconfig.json
puis supprimez le dossier node_modules et réinstallez avec
Pour plus de visite ici
la source
c'est une brève réponse que j'espère aider
Essayez de rétrograder l'Agular et Angular-CLI vers la v8, je pense que votre problème est un problème de compatibilité des packages
la source
Je pense que votre problème est né de la non-concordance de la typographie et de la version du module. Ce problème est très similaire à votre question et les réponses sont très satisfaisantes.
la source