【发布时间】:2019-11-12 06:55:32
【问题描述】:
我正在尝试在我的上下文菜单中调用一个函数。
getContextMenuItems(params) {
console.log(params.node.data)
var result = [
{
name: "Delete",
action : function () {
this.deletePriceFactor(params.node.data);
}
,
cssClasses: ["redFont", "bold"]
},
{
name: "Audit"
}
]
return result;
}
deletePriceFactor = (rowdata) =>{
this.priceFactorService.deleteEntry(rowdata.exchangeCode, rowdata.productCode, rowdata.secType).subscribe(pricefactors => {
});
}
我不断收到错误消息: 错误类型错误:this.deletePriceFactor 不是函数 在 Object.action (price-factor.component.ts:162)
我尝试过使用这样的箭头函数:
action : () => {
this.deletePriceFactor(params.node.data);
}
以上导致另一个错误:core.js:1673 ERROR TypeError: Cannot read property 'deletePriceFactor' of undefined
【问题讨论】:
-
什么是 Object.action ?
-
var 结果是一个对象列表。 Action 是调用我的函数的对象中的一个键
-
第一个版本不行,`function() {}`改变this的上下文
-
我将如何改变上下文?
-
你能在 stackblitz 代码中添加一个 jsfiddle 吗?我会很容易测试
标签: angular typescript ag-grid