Saya memiliki ribuan kesalahan ini setelah implementasi awal dan mengetik terminal ng melayani aplikasi saya dan saya tidak bisa menyelesaikannya. Ini adalah pertama kalinya bagi saya ketika saya memiliki masalah seperti ini di dalam sudut dengan naskah Script terlihat seperti ini:
GALAT dalam ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:24:19 - error TS1086: accessor tidak dapat dideklarasikan dalam konteks ambient.
24 protected get parentElement(): HTMLElement | null; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19
- error TS1086: Accessor tidak dapat dideklarasikan dalam konteks ambient.
26 protected get nativeElement(): HTMLElement; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9
- error TS1086: Accessor tidak dapat dideklarasikan dalam konteks ambient.
28 get activatedValue(): string; ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9
- error TS1086: Accessor tidak dapat dideklarasikan dalam konteks ambient.
29 set activatedValue(value: string); ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:20:9
- error TS1086: Accessor tidak dapat dideklarasikan dalam konteks ambient.
[...]
Apakah ada yang tahu alasannya? Saya tidak dapat menguji aplikasi saya sampai saya memperbaikinya.
Perbarui 1
Oke, saya membuatnya maju. Sebagian besar kesalahan sudah hilang, tetapi saya punya beberapa kesalahan sekarang, misalnya yang pertama:
GALAT di src / app / main / main.component.ts: 143: 63 - error TS2322: Ketik string | undefined 'tidak dapat ditugaskan untuk mengetik' string '. Ketik 'tidak terdefinisi' tidak dapat ditentukan untuk mengetik 'string'.
143 this.fileService.add ({isFolder: true, name: folder.name, parent: this.currentRoot? This.currentRoot.id: 'root'});
Kode terlihat seperti ini:
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));
}
}
9.0.0-beta.28
@ angular / flex-layout? Saya akan mencoba memutar kembali ke versi sebelumnya sebelum mereka menabrak versi TS.