Mam tysiące tego błędu po początkowej implementacji i wpisaniu w terminalu ng obsługiwać mojej aplikacji i nie mogę go rozwiązać. To pierwszy raz, kiedy mam taki problem wewnątrz kątowy z błędami maszynopisu wygląda następująco:
BŁĄD w ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:24:19 - błąd TS1086: Nie można zadeklarować akcesorium w kontekście otoczenia.
24 protected get parentElement(): HTMLElement | null; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19
- błąd TS1086: Akcesorium nie można zadeklarować w kontekście otoczenia.
26 protected get nativeElement(): HTMLElement; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9
- błąd TS1086: Akcesorium nie można zadeklarować w kontekście otoczenia.
28 get activatedValue(): string; ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9
- błąd TS1086: Akcesorium nie można zadeklarować w kontekście otoczenia.
29 set activatedValue(value: string); ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:20:9
- błąd TS1086: Akcesorium nie można zadeklarować w kontekście otoczenia.
[...]
Czy ktoś zna powód? Nie mogę przetestować aplikacji, dopóki jej nie naprawię.
Aktualizacja 1
Dobra, robię to do przodu. Większość błędów zniknęła, ale mam ich teraz kilka, na przykład pierwszy:
BŁĄD w src / app / main / main.component.ts: 143: 63 - błąd TS2322: Wpisz ciąg znaków | undefined ”nie można przypisać„ string ”. Wpisz „undefined” nie można przypisać do „string”.
143 this.fileService.add ({isFolder: true, name: folder.name, parent: this.currentRoot? This.currentRoot.id: 'root'});
Kod wygląda następująco:
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();
}
...
plik.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));
}
}
źródło
9.0.0-beta.28
@ angular / flex-layout? Spróbuję przywrócić poprzednią wersję, zanim zderzą się z wersją TS.Odpowiedzi:
Miałem ten sam problem i te 2 polecenia uratowały mi życie. Moim podstawowym problemem jest to, że zawsze mam problemy z instalacją globalną i instalacją lokalną. Być może masz podobny problem i mam nadzieję, że uruchomienie tych poleceń również rozwiąże problem.
źródło
Ustawienie
"skipLibCheck": true
wtsconfig.json
rozwiązać mój problemźródło
Mam ten sam problem, gdy dodałem teraz @ angular / flex-layout do mojego projektu Angular 8 z
Od tego czasu to polecenie zainstalowało główną 9. wersję pakietu flex-layout. Zamiast uaktualniać wszystko inne do ostatniej wersji, rozwiązałem to, instalując zamiast tego ostatnią 8. główną wersję pakietu .
źródło
Wygląda na to, że niedawno zainstalowałeś pakiet flex-layout. Spróbuj usunąć ten folder pakietu z folderu node_modules i ponownie zainstalować poprzednią wersję tego pakietu.
Niedawno (2 dni przed bieżącą datą) firma angular wydała najnowszą wersję angular-cli (v9.0.1), dzięki czemu wiele pakietów jest aktualizowanych w celu obsługi najnowszej wersji cli. W twoim przypadku możesz mieć starą wersję cli, a kiedy zainstalowałeś ten pakiet, domyślnie został pobrany do najnowszej wersji cli. Spróbuj obniżyć wersję pakietu. Pracował dla mnie przynajmniej.
Nie zapomnij również obniżyć wersji pakietu do pliku package.json
źródło
próbować
Następnie, aby zsynchronizować materiał, uruchom:
źródło
W moim przypadku zmiana wersji @ angular / animations zadziałała, jeśli możesz sobie na to pozwolić, uruchom polecenie
Lub skorzystaj z innej wersji, która może Ci odpowiadać na karcie Wersje tutaj: https://www.npmjs.com/package/@angular/animations
źródło
Szybkie rozwiązanie: zaktualizuj pakiet.json
W tsconfig.json
następnie usuń folder node_modules i zainstaluj ponownie za pomocą
Więcej informacji tutaj
źródło
to krótka odpowiedź, którą mam nadzieję pomóc
Spróbuj obniżyć interfejs Agular i Angular-CLI do wersji 8, myślę, że twój problem jest związany ze zgodnością pakietów
źródło
Myślę, że problem pojawił się w wyniku niedopasowania maszynopisu i wersji modułu. Ten problem jest bardzo podobny do twojego pytania, a odpowiedzi są bardzo satysfakcjonujące.
źródło