栅格布局,使用display: grid
,1.19.0+ 添加本组件,目前不支持IE。
device
处于 desktop
模式,此时 columns
为12列;device
参数为 tablet
后 columns
为8列;device
参数为 phone
后 columns
为4列,同时 Cell会根据内置规则进行自适应调配。自定义组件的间距是 ResponsiveGrid
算出来,同style透传给子组件的,因此子组件需要至少透传style属性;
// wrong
function Foo() {
return <div />;
}
// correct
function Foo({ style }) {
return <div style={style} />;
}
简单的栅格布局展示,Fusion Next推荐以PC为主要开发场景,自适配平板、手机端。默认使用12栅格布局。
只需进行如下设置,页面内容就可以根据自适应,遵循 12-8-4 设计原则。
参数 | 说明 | 类型 | 默认值 | 是否必填 |
---|---|---|---|---|
device | 设备,用来做自适应,默认为 PC | 'phone' | 'tablet' | 'desktop' | 'desktop' | |
columns | 分为几列, 默认是 12 列 | number | string | '12' | |
gap | 每个 cell 之间的间距, [bottom&top, right&left] | Spacing | - | |
component | 设置标签类型 | keyof React.JSX.IntrinsicElements | 'div' | |
dense | 是否开启紧密模式,开启后尽可能能紧密填满,尽量不出现空格 | boolean | 'false' |
参数 | 说明 | 类型 | 默认值 | 是否必填 |
---|---|---|---|---|
colSpan | 横向,占据几列 | | number | { desktop?: number; tablet?: number; phone?: number; } |
- | |
rowSpan | 纵向,占据几行 | number | - | |
component | 设置标签类型 | keyof React.JSX.IntrinsicElements | 'div' |