gpt4 book ai didi

reactjs - AG 网格 : cellRenderer disables value formatter

转载 作者:行者123 更新时间:2023-12-05 01:40:45 25 4
gpt4 key购买 nike

我的 AG-Grid 中有一个自定义的 cellRenderer,我正在使用一个 valueformatter:

const columnDefs = R.map(
R.pipe(x => ({
headerName: strings[x.name],
field: x.name,
valueFormatter: contactInformationFormatter,
comparator:
x.name === 'group' || x.name === 'tendency'
? selectValueToComparableNumber
: null,
cellRenderer: x.compenent !== 'select' ? 'highlightCellRenderer' : null,
cellEditor: componentToCellEditors[x.component],
cellEditorParams:
x.component === 'select' ? cellEditorParams[x.name] : null,
getQuickFilterText: function(params) {
return x.component === 'select' ? null : params.value;
},
})),
contactInformationCells
);

如果我排除 cellRenderer,格式化的值会正确显示。如果我包含它,我会得到未转换的值。这是错误吗?

这是我的格式化程序和我的cellRenderer:

function contactInformationFormatter(params) {
return strings[params.value] || params.value;
}

import React from 'react';
import { useSelector } from 'react-redux';

import { getSearchValue } from '../../layout/header/search-value-reducer';

function HighlightCellRenderer({ value, ...props }) {
const searchValue = useSelector(getSearchValue);
if (searchValue && value.toLowerCase().includes(searchValue)) {
return <strong>{value}</strong>;
}
return <span>{value}</span>;
}

export default HighlightCellRenderer;

最佳答案

这不是错误。您必须使用 cellRendererparams 中的 valueFormatted 属性来获取 valueFormatter 的格式化输出。 value 属性保存原始未格式化的数据。所以 cellRenderer 会像

function HighlightCellRenderer({ valueFormatted, ...props }) {
const searchValue = useSelector(getSearchValue);
if (searchValue && valueFormatted.toLowerCase().includes(searchValue)) {
return <strong>{valueFormatted}</strong>;
}
return <span>{valueFormatted}</span>;
}

关于reactjs - AG 网格 : cellRenderer disables value formatter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55953194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com