Reactjs ag grid header复选框选择所有行,甚至不包含的行';t有复选框

Reactjs ag grid header复选框选择所有行,甚至不包含的行';t有复选框,reactjs,ag-grid,Reactjs,Ag Grid,我实现了一个网格,其中包含除最后一行之外的第一列带有复选框的行(即,最后一行没有任何复选框) 因此,myColNameValue仅为最后一行的'。由于这种情况,网格的最后一行将不会有复选框。但当我点击标题复选框时,它会检查并选择所有行以及最后一行,即使它没有复选框 实现isRowSelectable()函数,并对不希望选择的行返回false 看这里- 在下面的代码(ag grid Javascript)中,只能选择年份

我实现了一个网格,其中包含除最后一行之外的第一列带有复选框的行(即,最后一行没有任何复选框)

因此,
myColNameValue
仅为最后一行的
'
。由于这种情况,网格的最后一行将不会有复选框。但当我点击标题复选框时,它会检查并选择所有行以及最后一行,即使它没有复选框

实现isRowSelectable()函数,并对不希望选择的行返回false

看这里-

在下面的代码(ag grid Javascript)中,只能选择年份<2007的行

constructor(private http: HttpClient) {
    this.columnDefs = [
      {
        headerName: "Athlete",
        field: "athlete"
      },
      {
        headerName: "Age",
        field: "age"
      },
      {
        headerName: "Country",
        field: "country",
        headerCheckboxSelection: true,
        checkboxSelection: true
      },
      {
        headerName: "Year",
        field: "year"
      },
      {
        headerName: "Date",
        field: "date"
      },
      {
        headerName: "Sport",
        field: "sport"
      },
      {
        headerName: "Gold",
        field: "gold"
      },
      {
        headerName: "Silver",
        field: "silver"
      },
      {
        headerName: "Bronze",
        field: "bronze"
      },
      {
        headerName: "Total",
        field: "total"
      }
    ];
    this.rowSelection = "multiple";
    this.isRowSelectable = function(rowNode) {
      return rowNode.data ? rowNode.data.year < 2007 : false;
    };
    this.defaultColDef = { width: 200 };
  }
构造函数(私有http:HttpClient){
this.columnDefs=[
{
头名:“运动员”,
领域:“运动员”
},
{
头名:“年龄”,
字段:“年龄”
},
{
头名:“国家”,
字段:“国家”,
HeaderCheckBox选择:正确,
复选框选择:true
},
{
头名:“年”,
字段:“年”
},
{
头名:“日期”,
字段:“日期”
},
{
头名:“运动”,
领域:“运动”
},
{
头名:“黄金”,
字段:“黄金”
},
{
头幕:“银色”,
字段:“银色”
},
{
头名:“青铜”,
领域:“青铜”
},
{
标题名称:“总计”,
字段:“总计”
}
];
this.rowSelection=“multiple”;
this.isRowSelectable=函数(行节点){
返回rowNode.data?rowNode.data.year<2007:false;
};
this.defaultColDef={width:200};
}

实现isRowSelectable()函数,对于不希望被选中的行返回false,请参见此处-我也尝试了此操作。`this.isRowSelectable=function(rowNode){return false;}`此函数为每一行返回false,但在我选中header复选框时仍选择所有行。我在
中还将其作为道具传递为“```这听起来是正确的答案,我建议您升级到最新的ag grid版本,或者发布一个plunker
constructor(private http: HttpClient) {
    this.columnDefs = [
      {
        headerName: "Athlete",
        field: "athlete"
      },
      {
        headerName: "Age",
        field: "age"
      },
      {
        headerName: "Country",
        field: "country",
        headerCheckboxSelection: true,
        checkboxSelection: true
      },
      {
        headerName: "Year",
        field: "year"
      },
      {
        headerName: "Date",
        field: "date"
      },
      {
        headerName: "Sport",
        field: "sport"
      },
      {
        headerName: "Gold",
        field: "gold"
      },
      {
        headerName: "Silver",
        field: "silver"
      },
      {
        headerName: "Bronze",
        field: "bronze"
      },
      {
        headerName: "Total",
        field: "total"
      }
    ];
    this.rowSelection = "multiple";
    this.isRowSelectable = function(rowNode) {
      return rowNode.data ? rowNode.data.year < 2007 : false;
    };
    this.defaultColDef = { width: 200 };
  }