Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular aggrid如何在字段中设置if条件_Angular_Typescript_Angular6_Ag Grid - Fatal编程技术网

Angular aggrid如何在字段中设置if条件

Angular aggrid如何在字段中设置if条件,angular,typescript,angular6,ag-grid,Angular,Typescript,Angular6,Ag Grid,我想在aggrid col def中添加一个if条件 this.ColumnDefs = [ { headerName: "Link Text", field: "portfolioCompanyLinkName.name", editable: false }, } 因此,在上面的示例中,我们是否可以说如果portfolioCompanyLinkName.name为空,则从其他列中获取值?尝试以下操作: this.Column

我想在aggrid col def中添加一个if条件

this.ColumnDefs =
      [
        {

          headerName: "Link Text", field: "portfolioCompanyLinkName.name", editable: false
        },
}
因此,在上面的示例中,我们是否可以说如果portfolioCompanyLinkName.name为空,则从其他列中获取值?

尝试以下操作:

this.ColumnDefs =
      [
        {
          headerName: "Link Text", 
          field: "portfolioCompanyLinkName.name", 
          editable: false,
          cellRenderer: function (params) {
          return params.data ? params.data.portfolioCompanyLinkName.name ? params.data.portfolioCompanyLinkName.name :   params.data.(other field) : '';
        }
        },
}

您可能需要使用valueGetter,您可以在此处详细介绍:


你能解释一下吗more@NoahLc基本上我想说的是,如果portfolioCompanyLinkName.name值为空,那么从linkname中取值,比如portfolioCompanyLinkName.name=''?linkname:portfolioCompanyLinkName.nameportfolioCompanyLinkName是一个对象吗?@NoahLc是的,它是一个对象你只需要写字段:portfolioCompanyLinkName.name?portfolioCompanyLinkName.name:portfolioCompanyLinkName如果它是一个对象,那么您应该在编写它时不使用“
this.columnDefs = [
  {
    headerName: "Link Text",
    valueGetter: function(params) {
    if(params.data.portfolioCompanyLinkName.name !== undefined) {
        return params.data.name;
    } else {
        return params.data.portfolioCompanyLinkName.otherfield;
    }

    }
  },
...