在React中要求render函數(shù)返回值只能是一個標(biāo)簽,簡單方式是通過在最外層包裹一個div來實(shí)現(xiàn),而有時候div不能滿足要求,React允許使用Fragments組件來作為最外層的包裹層,它只是一個包裹,最終渲染時不會影響整體的HTML結(jié)構(gòu)。
使用形式:
<></>
<React.Fragment>
</React.Fragment>
<></>是<React.Fragment/>的語法糖,但是不允許任何屬性輸入,所以如果是需要帶屬性的Fragments只能使用第二種方式
例:
class Table extends React.Component {
render() {
return (
<table>
<tr>
<Columns />
</tr>
</table>
);
}
}
class Columns extends React.Component {
render() {
return (
<>
<td>Hello</td>
<td>World</td>
</>
);
}
}
class Columns extends React.Component {
render() {
return (
<React.Fragment>
<td>Hello</td>
<td>World</td>
</React.Fragment>
);
}
}
最終結(jié)果
<table>
<tr>
<td>Hello</td>
<td>World</td>
</tr>
</table>