使用 ag-grid 为 cellRendererFramework 传递多个值?
Pass multiple values for cellRendererFramework using ag-grid?
我只看到一个与此相关的 SO 问题,没有发布任何答案。
我有一个 angular 应用程序使用 ag-grid。它使用 cellRendererFramework 渲染列 a 的数据以显示在 table 中。我需要从 Date 列中获取数据以正确格式化 Data 列,但找不到任何方法将其放入渲染器组件。这是基本代码:
// Columns defined inside the main component
this.columnDefs = [
{ headerName: 'Date', field: 'timestamp'},
{ headerName: 'Data',
field: 'type',
cellRendererFramework: MyRendererComponent,
},
}
// Inside the renderer component
export class MyRendererComponent implements OnInit {
myData: any;
agInit(params: import("ag-grid-community").ICellRendererParams): void {
// This is where I need data from the first column to
// properly set the return value
this.myData = this.setUpData(params.value)
}
setUpData(data: any) {
// Operate on the data here, but I need the timestamp to do it properly
}
...
}
有人建议我如何将 timestamp 数据导入 MyRendererComponent 吗?
找到答案了。使用 params 的数据参数访问行数据并获取该数据上的字段:
params.data.timestamp
https://www.ag-grid.com/javascript-grid-cell-rendering-components/#cell-renderers-and-row-groups
您可以使用 CellRendererParams
colDef.cellRenderer = myCellRenderer;
colDef.cellRendererParams = {
color: 'guinnessBlack'
}
然后您可以在 myCellRenderer
中使用 params.color
访问颜色
您可以阅读更多相关信息here
您应该使用 cellRendererParams 示例发送数据:
{
cellRendererFramework: 'CityCellRenderer',
cellRendererParams: {currentApartament: this.apartament},
},
你可以这样获取数据:
<template>
<div>
<v-btn text icon @click="btnClickedHandler()">
<v-icon>mdi-delete-outline</v-icon>
</v-btn>
</div>
</template>
<script>
export default {
name: 'CityCellRenderer',
methods: {
btnClickedHandler() {
console.log(this.params) //please you check the properties.
},
},
}
</script>
我只看到一个与此相关的 SO 问题,没有发布任何答案。
我有一个 angular 应用程序使用 ag-grid。它使用 cellRendererFramework 渲染列 a 的数据以显示在 table 中。我需要从 Date 列中获取数据以正确格式化 Data 列,但找不到任何方法将其放入渲染器组件。这是基本代码:
// Columns defined inside the main component
this.columnDefs = [
{ headerName: 'Date', field: 'timestamp'},
{ headerName: 'Data',
field: 'type',
cellRendererFramework: MyRendererComponent,
},
}
// Inside the renderer component
export class MyRendererComponent implements OnInit {
myData: any;
agInit(params: import("ag-grid-community").ICellRendererParams): void {
// This is where I need data from the first column to
// properly set the return value
this.myData = this.setUpData(params.value)
}
setUpData(data: any) {
// Operate on the data here, but I need the timestamp to do it properly
}
...
}
有人建议我如何将 timestamp 数据导入 MyRendererComponent 吗?
找到答案了。使用 params 的数据参数访问行数据并获取该数据上的字段:
params.data.timestamp
https://www.ag-grid.com/javascript-grid-cell-rendering-components/#cell-renderers-and-row-groups
您可以使用 CellRendererParams
colDef.cellRenderer = myCellRenderer;
colDef.cellRendererParams = {
color: 'guinnessBlack'
}
然后您可以在 myCellRenderer
params.color
访问颜色
您可以阅读更多相关信息here
您应该使用 cellRendererParams 示例发送数据:
{
cellRendererFramework: 'CityCellRenderer',
cellRendererParams: {currentApartament: this.apartament},
},
你可以这样获取数据:
<template>
<div>
<v-btn text icon @click="btnClickedHandler()">
<v-icon>mdi-delete-outline</v-icon>
</v-btn>
</div>
</template>
<script>
export default {
name: 'CityCellRenderer',
methods: {
btnClickedHandler() {
console.log(this.params) //please you check the properties.
},
},
}
</script>