UNPKG

amis

Version:

一种MIS页面生成工具

122 lines (121 loc) 3.12 kB
import React from 'react'; import { RendererProps } from '../factory'; import { Schema } from '../types'; import { BaseSchema, SchemaClassName, SchemaObject } from '../Schema'; export declare const ColProps: string[]; export declare type GridColumnObject = { /** * 极小屏(<768px)时宽度占比 */ xs?: number; /** * 极小屏(<768px)时是否隐藏该列 */ xsHidden?: boolean; /** * 极小屏(<768px)时宽度偏移量 */ xsOffset?: number; /** * 极小屏(<768px)时宽度右偏移量 */ xsPull?: number; /** * 极小屏(<768px)时宽度左偏移量 */ xsPush?: number; /** * 小屏时(>=768px)宽度占比 */ sm?: number; /** * 小屏时(>=768px)是否隐藏该列 */ smHidden?: boolean; /** * 小屏时(>=768px)宽度偏移量 */ smOffset?: number; /** * 小屏时(>=768px)宽度右偏移量 */ smPull?: number; /** * 小屏时(>=768px)宽度左偏移量 */ smPush?: number; /** * 中屏时(>=992px)宽度占比 */ md?: number; /** * 中屏时(>=992px)是否隐藏该列 */ mdHidden?: boolean; /** * 中屏时(>=992px)宽度偏移量 */ mdOffset?: number; /** * 中屏时(>=992px)宽度右偏移量 */ mdPull?: number; /** * 中屏时(>=992px)宽度左偏移量 */ mdPush?: number; /** * 大屏时(>=1200px)宽度占比 */ lg?: number; /** * 大屏时(>=1200px)是否隐藏该列 */ lgHidden?: boolean; /** * 大屏时(>=1200px)宽度偏移量 */ lgOffset?: number; /** * 大屏时(>=1200px)宽度右偏移量 */ lgPull?: number; /** * 大屏时(>=1200px)宽度左偏移量 */ lgPush?: number; mode?: string; horizontal?: any; /** * 列类名 */ columnClassName?: SchemaClassName; }; export declare type GridColumn = GridColumnObject & SchemaObject; export declare type ColumnNode = GridColumn | ColumnArray; export interface ColumnArray extends Array<ColumnNode> { } /** * Grid 格子布局渲染器。 * 文档:https://baidu.gitee.io/amis/docs/components/grid */ export interface GridSchema extends BaseSchema { /** * 指定为 Grid 格子布局渲染器。 */ type: 'grid'; columns: Array<GridColumn>; } export interface GridProps extends RendererProps, Omit<GridSchema, 'type' | 'className' | 'columnClassName'> { itemRender?: (item: any, key: number, length: number, props: any) => JSX.Element; } export default class Grid<T> extends React.Component<GridProps & T, object> { static propsList: Array<string>; static defaultProps: {}; renderChild(region: string, node: Schema, key: number, length: number): JSX.Element; renderColumn(column: ColumnNode, key: number, length: number): JSX.Element; renderColumns(columns: ColumnArray): JSX.Element[]; render(): JSX.Element; } export declare class GridRenderer extends Grid<{}> { }