react 数据处理: 过滤为null的数据
如果在接口返回的数据中存在null的数据,例如这样:
{"bank_count":<span style="color:#abe338">"760.65874568"</span>,"emission_all":<span style="color:#abe338">"712.14230283"</span>,"emission_discard":<span style="color:#abe338">"225.96975736"</span>,"emission_init":<span style="color:#abe338">"52.00000000"</span>,"emission_operation":<span style="color:#abe338">"318.24504262"</span>,"emission_service":<span style="color:#abe338">"115.92750285"</span>,"year":<span style="color:#f5ab35">2027</span>},<span style="color:#f5ab35">null</span>]', materialId: <span style="color:#f5ab35">16</span> }那么页面展示的时候会出现result undefind
可以这样进行修改
const materialResults = JSON.parse(material.results)
.filter(result => result !== null); // 过滤掉 null 值
materialResults.forEach(result => {
// 处理非空的 result 对象
const year = result.year;
const emissionAll = result.emission_all ? result.emission_all : null;
// 其他处理逻辑...
});(2)在render里可以这样处理:
<tbody>
{details_item.results && JSON.parse(details_item.results)
.filter(item => item !== null) // 过滤掉 null 值
.map((item, index) => (
<tr key={index}>
{columns.map((column, index) => (
<td key={index}>{item[column.dataIndex]}</td>
))}
</tr>
))}
</tbody>