Ag grid 在ag网格中切换可编辑和不可编辑模式

Ag grid 在ag网格中切换可编辑和不可编辑模式,ag-grid,ag-grid-ng2,Ag Grid,Ag Grid Ng2,我正在使用ag栅格显示和修改数据。如何在孔ag栅格的可编辑和不可编辑之间切换。我可以用网格api来实现这一点吗 这是我的默认配置: this.defaultDefs = { suppressMovable: true, enableColResize: true, editable: true, }; 我可以动态更改“可编辑”吗?可编辑可以是布尔值,也可以是函数 如果使用函数窗体,则可以逐个单元

我正在使用ag栅格显示和修改数据。如何在孔ag栅格的可编辑和不可编辑之间切换。我可以用网格api来实现这一点吗

这是我的默认配置:

this.defaultDefs = {           
    suppressMovable: true,     
    enableColResize: true,     
    editable: true,            
};     

我可以动态更改“可编辑”吗?

可编辑可以是布尔值,也可以是函数

如果使用函数窗体,则可以逐个单元格确定是否希望给定单元格可编辑

editable: function(params) {
   return true; // true/false based on params (or some other criteria) value
}

您可以通过自己的方式设置“可编辑”属性,只需创建另一个函数isEditable(columnName),它将为您提供布尔结果

this.defaultDefs = {           
    suppressMovable: true,     
    enableColResize: true,     
    editable: isEditable(column),            
};  

在回调中执行逻辑检查,检查失败时调用stop()。您可能需要编写一些css来设置样式,或者添加一个toast/通知,以向用户反馈他们无法编辑的原因。

thx我将尝试此方法。顺便问一下,此函数是否会影响始终不可编辑的列我有相同的列,其中我指定了可编辑:false此函数是否会影响它们您也可以按列设置可编辑-这将覆盖defaultDefs上的设置。如果defaultDefs获取函数或布尔值,它将始终被覆盖。我的意思是,detaultCols上的任何设置都可以逐列覆盖。在defaultDefs上设置任何默认值(例如不可编辑),然后根据需要逐列重写。请注意,列的默认设置是不可编辑。这样做的一个副作用是,编辑界面将在开始/取消编辑之间短暂闪烁,最好使用可编辑属性的回调,这样,如果需要,可以在每个单元格级别上完全阻止进入编辑模式