我的代码有问题。编译代码时没有错误,但出现控制台错误: this.trackArray[0].points.getVector() 不是函数。
这是我调用此函数的代码
const vecteurPoints: THREE.Vector3[] = this.trackArray[0].points.getVector();
这是函数
public getVector(): Vector3[] {
const vecArray: Vector3[] = new Array();
for (const i of this.coordX) {
vecArray[i].x = this.coordX[i];
vecArray[i].y = this.coordY[i];
vecArray[i].z = this.coordZ[i];
}
return vecArray;
}
在 VS Code 中,当我按住 Ctrl 键并单击函数时,它会将我发送到函数定义。
我通过调用 API 来获取 trackArray。
export class AdminService {
public constructor( private http: HttpClient ) { }
public getTracks(): Observable<Track[]> {
return this.http.get<Track[]>(this.ADMIN_URL).pipe(catchError(this.handleError<Track[]>("getTracks"))
);
}
我这样称呼这个类
this.admin.getTracks().subscribe((track: Track[]) => {this.trackArray = track; });
最佳答案
我发现我的问题了!因为我使用 JSON 获取了 trackArray,所以我必须实例化一个新轨道才能应用我的方法! 谢谢大家的帮助
关于javascript - Typescript X 不是一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49604356/