ฉันมีข้อผิดพลาดนี้นับพันหลังจากการใช้งานครั้งแรกและพิมพ์ใน terminal ng ให้บริการแอพของฉันและฉันไม่สามารถแก้ไขได้ นี่เป็นครั้งแรกสำหรับฉันเมื่อฉันมีปัญหาเช่นนี้ภายในเชิงมุมที่มีข้อผิดพลาด typescript ดูเหมือนว่า:
ข้อผิดพลาดใน ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:24:19 - ข้อผิดพลาด TS1086: ตัวเข้าถึงไม่สามารถประกาศในบริบทแวดล้อม
24 protected get parentElement(): HTMLElement | null; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19
- ข้อผิดพลาด TS1086: ไม่สามารถประกาศตัวเข้าถึงได้ในบริบทแวดล้อม
26 protected get nativeElement(): HTMLElement; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9
- ข้อผิดพลาด TS1086: ไม่สามารถประกาศตัวเข้าถึงได้ในบริบทแวดล้อม
28 get activatedValue(): string; ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9
- ข้อผิดพลาด TS1086: ไม่สามารถประกาศตัวเข้าถึงได้ในบริบทแวดล้อม
29 set activatedValue(value: string); ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:20:9
- ข้อผิดพลาด TS1086: ไม่สามารถประกาศตัวเข้าถึงได้ในบริบทแวดล้อม
[...]
มีใครรู้บ้างไหม? ฉันไม่สามารถทดสอบแอพได้จนกว่าฉันจะแก้ไข
อัปเดต 1
โอเคฉันทำไปข้างหน้า ข้อผิดพลาดส่วนใหญ่หายไป แต่ตอนนี้ฉันมีข้อผิดพลาดอยู่เล็กน้อยตัวอย่างเช่นข้อแรก:
ข้อผิดพลาดใน src / app / main / main.component.ts: 143: 63 - ข้อผิดพลาด TS2322: Type 'string | ไม่ได้กำหนด 'ไม่สามารถกำหนดให้พิมพ์' สตริง ' พิมพ์ 'undefined' ไม่สามารถกำหนดให้พิมพ์ 'string'
143 this.fileService.add ({isFolder: true, ชื่อ: folder.name, parent: this.currentRoot? this.currentRoot.id: 'root'});
รหัสดูเหมือนว่านี้:
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 หรือไม่? ฉันจะลองย้อนกลับไปเป็นเวอร์ชันก่อนหน้าก่อนที่จะชนรุ่น TS