我第一次使用MUI来学习一些react。我想知道为什么要将Box
组件与Grid
组件沿着使用。在docs中,它将此作为示例显示
export default function BasicGrid() {
return (
<Box sx={{ flexGrow: 1 }}>
<Grid container spacing={2}>
<Grid xs={8}>
<Item>xs=8</Item>
</Grid>
<Grid xs={4}>
<Item>xs=4</Item>
</Grid>
<Grid xs={4}>
<Item>xs=4</Item>
</Grid>
<Grid xs={8}>
<Item>xs=8</Item>
</Grid>
</Grid>
</Box>
);
}
我删除了Box
组件,将所有 prop 应用到最外面的Grid
,我认为一切看起来都一样。用Box
Package Grid
组件有什么好处吗?如果能提供帮助,那就太好了!
取出最外层容器似乎没有任何作用
1条答案
按热度按时间daolsyd01#
Box
=div
点击这里查看:https://github.com/mui/material-ui/blob/master/packages/mui-material/src/Box/Box.js
它就叫这个:https://github.com/mui/material-ui/blob/master/packages/mui-system/src/createBox.js
它是一个接受camelCase css属性并遵守MUI样式系统规则的div,就是这样-它是一个div
几乎在所有使用
Box
的地方,将其替换为带有内联CSS属性的div
,您将得到相同的结果在您的代码示例中,只有当它是
flex
容器的子容器时,它才有意义,否则,它实际上什么也不做(普通的div
不做),因为flex-grow
只在flex
容器中相关。