官方文档对于render的解释为:
text表示当前行的值,record表示当前行的数据
如果进行简单的三目运算判断,结构题很好写
{
title: '标题',
// dataIndex: 'status',
key: 'status',
render:(text,record) =>
(
record.status==='NORMAL'
?
<span>执行中</span>
:
<span>暂停中</span>
)
}
但是判断条件多于两个时,就要用switch语句来实现,但是格式细节有很多需要注意的地方
{
title: '标题',
// dataIndex: 'status',
key: 'status',
render:(text,record) =>
//此处为大括号{,不是小括号(
{
switch (record.status){
case "NORMAL":
//此处标签的开头要在return后方写,换行会导致unreachable code
return <span>执行中</span>
//不用break打断了
case "NONE":
return <span>空</span>
case "BLOCKED":
return <span>阻塞</span>
//default一定要写
default:
return null;
}
}
},
总结,render:(text,record)=>此处不是小括号,而是大括号{,最重要,retrun的标签头一定是紧跟return后方,不要换行,否则会报unreachable code,return后不写break;打断,default别忘了写。
希望能帮助到遇到问题的兄弟,有问题可以留言或者有改进的可以私信我,谢谢!