更新&通过自定义上下文菜单Ag-Grid删除

时间:2017-08-02 14:50:44

标签: javascript ag-grid ag-grid-ng2

我正在使用角度为2的ag-grid。

我创建了一个自定义上下文菜单,其中包含删除和更新按钮。 在一个场景中,用户选择一行或多行,然后右键单击并单击删除或更新按钮。

这些按钮调用某些函数,这些函数使用gridOptions来处理选定的行。

然而;当我单击删除或更新按钮时,我有一个错误,指出this.gripOptions未定义。

有关于此的任何示例或文档吗? 我怎样才能克服这个问题?

感谢您的回复

    var gridOptions = {
        columnDefs: columnDefs,
        enableRangeSelection: true,
        getContextMenuItems: getContextMenuItems,
        allowContextMenuWithControlKey: true
    };
    getContextMenuItems(params) {
        var result = [
            { // custom item
                name: 'Delete',
                action: function () { this.delete()); }
            } 

    return result;
    }

    delete() {
        var selectedRows = this.gridOptions.api.getSelectedRows();
    }

1 个答案:

答案 0 :(得分:0)

这是因为您将gridOptions声明为变量,而不是其中的一部分。你能做的是:

var vm = this;
vm.gridOptions={...}

[...]

 delete() {
    var selectedRows = vm.gridOptions.api.getSelectedRows();
}

这样你就不会涉及“这个”,这在Javascript中难以管理,但你对本地环境有一定的参考