:TypeError例外:getPositionはない機能私のxx.model.tsから
export class ReferenceObject {
name: string;
position: Position;
public getPosition() : Member {
return this.position;
}
}
export class Position {
latitude: number;
longitude: number;
}
そして、私のmap.component.tsから:
allObjects : ReferenceObject[] = [];
// allObjects is subscribed to an observable from xx.service.ts
private renderReferenceObjects() {
var i = 0;
this.allObjects.forEach (nextObject => {
this.objects[i] = this.viewer.entities.add ({
name : nextObject.name,
position : Cesium.Cartesian3.fromDegrees(nextObject.getPosition().longitude, nextObject.getPosition().latitude),
billboard : {
scale : 1.0,
image : 'assets/img.png'
}
});
}
});
問題は何ですか?なぜこの方法にアクセスできないのですか?これはpublicに設定されており、上記のようにnextObject.nameを参照できますが、問題はありません。それは私がエラーが現れるそのメンバー関数にアクセスしようとする行に着くまでではありません。
注:私はコードを見直しましたが、正しく見えますが、タイプミスがある可能性があります。私はこのコードを転記するときに多くの変更を加えなければなりませんでした。コードが翻訳されたり実行されたりするのを防ぐ主要なタイプミスがあれば、それは間違いなく私の問題の原因ではありませんが、コメントで指摘して訂正してください。
編集: nextObject.getPosition()のすべてのインスタンスをnextObject.positionに置き換えると、完全に機能しました。私はまだそれがなぜ機能するのかについて非常に興味がありますが、方法はそうではありません。
allObjectは、各nextObjectがReferenceObjectであるように、ReferenceObjectクラスの配列を参照する必要があります。 –
@ DanielH.J。そうです。 –