我的棱角项目中有一个打字稿课,像这样:
export class CreateGeojsonLayerCommand implements Icommand {
parameters: Object;
execute(parameters: Object): Object {
this.parameters = parameters;
let layer = new Vector({
style: createStyleFunction
});
}
private createStyleFunction(feature: any): Style {
//this.parameters is undefined here
}
}
new Vector
对象是第三方工具对象。因此,我已经从createStyleFunction
方法中创建了execute
。但是我无法使用parameters
这样的关键字来访问this.parameters
变量。
答案 0 :(得分:2)
您应该使用箭头功能,否则它指的是特定的上下文,
private createStyleFunction = (feature: any): Style => {
}
答案 1 :(得分:0)
请确保在使用execute
之前调用createStyleFunction
函数,否则parameters
不会被实例化。或向类添加构造函数以实例化parameters
。