ant-design/type-definitions/antd.d.ts

1952 lines
57 KiB
TypeScript
Raw Normal View History

2016-04-21 15:52:54 +08:00
// Type definitions for Antd v0.12.10
// Project: http://ant.design
// Definitions by: bang88 <https://github.com/bang88>, Bruce Mitchener <https://github.com/waywardmonkeys/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
import * as React from 'react'
2016-04-21 15:52:54 +08:00
declare namespace Antd {
// Affix
interface AffixProps {
/**
*
*/
offset?: number
}
/**
* # Affix
*
* ## 使
*
*
*/
export class Affix extends React.Component<AffixProps, {}> {
render(): JSX.Element
}
// Alert
interface AlertProps {
/**
* `success``info``warn``error`
*/
type: string,
/**可选参数,默认不显示关闭按钮 */
closable?: boolean,
/**可选参数,自定义关闭按钮 */
closeText?: React.ReactNode,
/**必选参数,警告提示内容 */
message: React.ReactNode,
/**可选参数,警告提示的辅助性文字介绍 */
description?: React.ReactNode,
/**可选参数,关闭时触发的回调函数 */
onClose?: Function,
/**可选参数,是否显示辅助图标 */
showIcon?: boolean
}
/**
* # Alert
*
* ## 使
* -
* -
* */
export class Alert extends React.Component<AlertProps, {}> {
render(): JSX.Element
}
// Badge
/**
* #Badge
*
*
* ## 使
*
*
*/
export class Badge extends React.Component<BadgeProps, {}> {
render(): JSX.Element
}
interface BadgeProps {
/** 展示的数字,大于 overflowCount 时显示为 `${overflowCount}+`,为 0 时隐藏*/
count: number,
/** 展示封顶的数字值*/
overflowCount?: number,
/** 不展示数字,只有一个小红点*/
dot?: boolean
}
// Button
interface ButtonProps {
/** 设置按钮类型,可选值为 `primary` `ghost` 或者不设 */
type?: ButtonType | string,
/** 设置按钮形状,可选值为 `circle` `circle-outline` 或者不设*/
shape?: string,
/** 设置按钮大小,可选值为 `small` `large` 或者不设*/
size?: string,
/** 设置 `button` 原生的 `type` 值,可选值请参考 HTML标准*/
htmlType?: string,
/** `click` 事件的 handler*/
onClick?: Function,
/** 设置按钮载入状态*/
loading?: boolean,
/** 样式名*/
className?: string,
}
enum ButtonType {
primary,
ghost,
dashed
}
interface ButtonGroupProps {
/** 设置按钮大小,可选值为 `small` `large` 或者不设*/
size?: string
}
/**
`Button` `Button.Group`
`size` `large` `small` `size`*/
class ButtonGroup extends React.Component<ButtonGroupProps, {}> {
render(): JSX.Element
}
/**
* #Button
## 使
*/
export class Button extends React.Component<ButtonProps, {}> {
static Group: typeof ButtonGroup
render(): JSX.Element
}
// Breadcrumb
interface BreadcrumbItemProps {
/** 链接,如不传则不可点击 */
href?: string
}
export class BreadcrumbItem extends React.Component<BreadcrumbItemProps, {}> {
render(): JSX.Element
}
interface BreadcrumbProps {
/** router 的路由栈信息 */
routes?: Array<React.ReactNode>,
/** 路由的参数*/
params?: Object,
/** 分隔符自定义*/
separator?: string | React.ReactNode
}
/**
* #Breadcrumb
## 使
-
-
- */
export class Breadcrumb extends React.Component<BreadcrumbProps, {}> {
static Item: typeof BreadcrumbItem
render(): JSX.Element
}
// Calendar
interface CalendarProps {
/** 自定义渲染月单元格*/
monthCellRender?: Function,
/** 自定义渲染日期单元格*/
dateCellRender?: Function,
/** 是否全屏显示*/
fullscreen?: boolean,
/** 国际化配置*/
locale?: Object,
prefixCls?: string,
className?: string,
style?: Object,
/** 日期面板变化回调*/
onPanelChange?: Function,
/** 展示日期*/
value?: Date,
/** 默认展示日期*/
defaultValue?: Date,
/** 初始模式,`month/year`*/
mode?: string
}
/**
* #Calendar
## 使
/
*/
export class Calendar extends React.Component<CalendarProps, {}> {
render(): JSX.Element
}
// Carousel
interface CarouselProps {
/** 动画效果函数,可取 scrollx, fade*/
effect?: string,
/** 是否显示面板指示点*/
dots?: boolean,
/** 垂直显示*/
vertical?: boolean,
/** 是否自动切换*/
autoplay?: boolean,
/** 动画效果*/
easing?: string,
/** 切换面板的回调*/
beforeChange?: Function,
/** 切换面板的回调*/
afterChange?: Function
}
/**
* #Carousel
## 使
-
-
-
*/
export class Carousel extends React.Component<CarouselProps, {}> {
render(): JSX.Element
}
// Cascader
interface CascaderProps {
/** 可选项数据源*/
options: Object,
/** 默认的选中项*/
defaultValue?: Array<any>,
/** 指定选中项*/
value?: Array<any>,
/** 选择完成后的回调*/
onChange?: Function,
/** 选择后展示的渲染函数*/
displayRender?: Function,
/** 自定义样式*/
style?: Object,
/** 自定义类名*/
className?: string,
/** 自定义浮层类名*/
popupClassName?: string,
/** 浮层预设位置:`bottomLeft` `bottomRight` `topLeft` `topRight` */
popupPlacement?: string,
/** 输入框占位文本*/
placeholder?: string,
/** 输入框大小,可选 `large` `default` `small` */
size?: string,
/** 禁用*/
disabled?: boolean,
/** 是否支持清除*/
allowClear?: boolean
}
/**
* #Cascader
## 使
-
- 便
- Select */
export class Cascader extends React.Component<CascaderProps, {}> {
render(): JSX.Element
}
// Checkbox
interface CheckboxProps {
/** 指定当前是否选中*/
checked?: boolean,
/** 初始是否选中*/
defaultChecked?: boolean,
/** 变化时回调函数*/
onChange?: Function
}
interface CheckboxGroupProps {
/** 默认选中的选项*/
defaultValue?: Array<any>,
/** 指定选中的选项*/
value?: Array<any>,
/** 指定可选项*/
options?: Array<any>,
/** 变化时回调函数*/
onChange?: Function
}
/** Checkbox 组*/
class CheckboxGroup extends React.Component<CheckboxGroupProps, {}> {
render(): JSX.Element
}
/**
* #Checkbox
## 使
-
- 使 `switch` `switch` `checkbox`
*/
export class Checkbox extends React.Component<CheckboxProps, {}> {
static Group: typeof CheckboxGroup
render(): JSX.Element
}
// Collapse
interface CollapseProps {
/** 当前激活 tab 面板的 key*/
activeKey?: Array<any> | string,
/** 初始化选中面板的key */
defaultActiveKey?: Array<string>,
/** 切换面板的回调*/
onChange?: Function
}
class CollapsePanel extends React.Component<{
/** 对应 activeKey */
key: string,
/** 面板头内容*/
header: React.ReactNode | string
}, {}> {
render(): JSX.Element
}
/**
* #Collapse
/
## 使
-
- `手风琴` */
export class Collapse extends React.Component<CollapseProps, {}> {
static Panel: typeof CollapsePanel
render(): JSX.Element
}
// DatePicker
interface DatePickerProps<T> {
value?: string | Date,
defaultValue?: string | Date,
/** 展示的日期格式,配置参考 [GregorianCalendarFormat](https://github.com/yiminghe/gregorian-calendar-format)*/
format?: string,
/** 不可选择的日期*/
disabledDate?: Function,
/** 时间发生变化的回调,发生在用户选择时间时*/
onChange?: Function,
/** 禁用*/
disabled?: boolean,
style?: Object,
/** 格外的弹出日历样式*/
popupStyle?: Object,
/** 输入框大小,`large` 高度为 32px`small` 为 22px默认是 28px*/
size?: string,
/** 国际化配置*/
locale?: Object,
/** 增加时间选择功能*/
showTime?: boolean,
/** 点击确定按钮的回调*/
onOk?: Function,
/** 定义浮层的容器,默认为 body 上新建 div*/
getCalendarContainer?: Function
}
interface RangePickProps extends DatePickerProps<RangePicker> {
}
class RangePicker extends React.Component<RangePickProps, {}> {
render(): JSX.Element
}
class MonthPicker extends React.Component<RangePickProps, {}> {
render(): JSX.Element
}
/**
* #DatePicker
## 使
*/
export class DatePicker extends React.Component<DatePickerProps<any>, {}> {
static RangePicker: typeof RangePicker
static MonthPicker: typeof MonthPicker
render(): JSX.Element
}
// Dropdown
interface DropdownProps {
/** 触发下拉的行为 ['click'] or ['hover']*/
trigger?: Array<string>,
/** 菜单节点*/
overlay: React.ReactNode
}
class DropdownButton extends React.Component<{
/** 按钮类型*/
type?: string,
/** 点击左侧按钮的回调*/
onClick?: Function,
/** 触发下拉的行为*/
trigger?: string,
/** 菜单节点*/
overlay: React.ReactNode
}, {}> {
render(): JSX.Element
}
/**
* #Dropdown
## 使
*/
export class Dropdown extends React.Component<DropdownProps, {}> {
static Button: typeof DropdownButton
render(): JSX.Element
}
// Form
interface FormItemProps {
prefixCls?: string,
/** label 标签的文本*/
label?: React.ReactNode,
/** label 标签布局,通 `<Col>` 组件,设置 `span` `offset` 值,如 `{span: 3, offset: 12}`*/
labelCol?: Object,
/** 提示信息,如不设置,则会根据校验规则自动生成 */
help?: React.ReactNode | boolean,
/** 额外的提示信息,和 help 类似,当需要错误信息和提示文案同时出现时,可以使用这个。*/
extra?: string,
/** 是否必填,如不设置,则会根据校验规则自动生成 */
validateStatus?: string,
/** 配合 validateStatus 属性使用,是否展示校验状态图标 */
hasFeedback?: boolean,
/** 需要为输入控件设置布局样式时,使用该属性,用法同 labelCol*/
wrapperCol?: Object,
className?: string,
required?: boolean,
id?: string
}
/**
`<Form.Item />` `<Input />`*/
export class FormItem extends React.Component<FormItemProps, {}> {
render(): JSX.Element
}
interface FormComponentProps {
form: CreateFormOptions
}
export class FormComponent extends React.Component<FormComponentProps, {}> {
render(): JSX.Element
}
// function create
type CreateFormOptions = {
/** 获取一组输入控件的值,如不传入参数,则获取全部组件的值*/
getFieldsValue(): (fieldNames?: Array<string>) => any
/** 获取一个输入控件的值*/
getFieldValue(): (fieldName: string) => any
/** 设置一组输入控件的值*/
setFieldsValue(): (obj: Object) => void
/** 设置一组输入控件的值*/
setFields(): (obj: Object) => void
/** 校验并获取一组输入域的值与 Error*/
validateFields(): (fieldNames?: Array<string>, options?: Object, callback?: (erros: any, values: any) => void) => any
/** 与 `validateFields` 相似,但校验完后,如果校验不通过的菜单域不在可见范围内,则自动滚动进可见范围 */
validateFieldsAndScroll(): (fieldNames?: Array<string>, options?: Object, callback?: (erros: any, values: any) => void) => any
/** 获取某个输入控件的 Error */
getFieldError(): (name: string) => Object
/** 判断一个输入控件是否在校验状态*/
isFieldValidating(): (name: string) => Object
/**重置一组输入控件的值与状态,如不传入参数,则重置所有组件*/
resetFields(): (names?: Array<string>) => void
getFieldsValue(): (id: string, options: {
/** 子节点的值的属性,如 Checkbox 的是 'checked'*/
valuePropName?: string,
/** 子节点的初始值,类型、可选值均由子节点决定*/
initialValue?: any,
/** 收集子节点的值的时机*/
trigger?: string,
/** 校验子节点值的时机*/
validateTrigger?: string,
/** 校验规则,参见 [async-validator](https://github.com/yiminghe/async-validator) */
rules?: Array<any>,
/** 必填输入控件唯一标志*/
id?: string
}) => Array<any>
}
interface ComponentDecorator {
<T extends (typeof FormComponent)>(component: T): T;
}
interface FormProps {
prefixCls?: string,
/** 水平排列布局*/
horizontal?: boolean,
/** 行内排列布局*/
inline?: boolean,
/** 经 `Form.create()` 包装过的组件会自带 `this.props.form` 属性,直接传给 Form 即可*/
form?: Object,
/** 数据验证成功后回调事件*/
onSubmit?: (e: React.FormEvent) => void,
}
/**
* #Form
##
`form`
- `label` ;
- 使 `inline-block`
*/
export class Form extends React.Component<FormProps, {}> {
static Item: typeof FormItem
static create(options?: {
/**
* `Form.Item` Redux store
*/
onFieldsChange?: (props: Object, fields: Array<any>) => void,
/** 把 props 转为对应的值,可用于把 Redux store 中的值读出 */
mapPropsToFields?: (props: Object) => void
}): ComponentDecorator
render(): JSX.Element
}
// Icon
interface IconProps {
/** 图标类型*/
type: string
}
/**
* #Icon
##
:
- 线 `-o` `question-circle`() `question-circle-o`(线)
- `[icon名]-[形状可选]-[描线与否]-[方向可选]`
## 使
使 `<Icon />` type :
```html
<Icon type="link" />
```
```html
<i class="anticon anticon-${type}"></i>
```*/
export class Icon extends React.Component<IconProps, {}> {
render(): JSX.Element
}
// Input
interface InputProps {
/** 【必须】声明 input 类型,同原生 input 标签的 type 属性*/
type?: string,
id: string | number,
/** 控件大小,默认值为 default 。注:标准表单内的输入框大小限制为 large。 {'large','default','small'}*/
size?: string,
/** 是否禁用状态,默认为 false*/
disabled?: boolean,
value?: any,
/** 设置初始默认值*/
defaultValue?: any,
className?: string,
/** 带标签的 input设置前置标签*/
addonBefore?: React.ReactNode,
/** 带标签的 input设置后置标签*/
addonAfter?: React.ReactNode,
prefixCls?: string,
placeholder?: string
}
export class Input extends React.Component<InputProps, {}> {
render(): JSX.Element
}
// InputNumber
interface InputNumberProps {
/** 最小值*/
min: number,
/** 最大值*/
max: number,
/** 当前值*/
value?: number,
/** 每次改变步数*/
step?: number,
/** 初始值*/
defaultValue?: number,
/** 变化回调*/
onChange?: Function,
/** 禁用*/
disabled?: boolean,
/** 输入框大小*/
size?: string
}
/**
* #InputNumber
## 使
*/
export class InputNumber extends React.Component<InputNumberProps, {}> {
render(): JSX.Element
}
// Layout
// Row
interface RowProps {
type?: string,
align?: string,
justify?: string,
className?: string
}
export class Row extends React.Component<RowProps, {}> {
render(): JSX.Element
}
// Col
interface ColProps {
span?: string,
order?: string,
offset?: string,
push?: string,
pull?: string,
className?: string
}
/**
Ant Design需要在设计区域内解决大量信息收纳的问题1224
##
rowcol
* `row``column`col
* `col``col``row`
* 124使`.col-8`
* `row``col`24`col`
## Flex
Flex - 使 order
Flex 24 */
export class Col extends React.Component<ColProps, {}> {
render(): JSX.Element
}
// Menu
interface MenuItemProps {
/**
* ()
*
* @type {boolean}
*/
disabled?: boolean,
key: string
}
export class MenuItem extends React.Component<MenuItemProps, {}> {
render(): JSX.Element
}
interface MenuSubMenuProps {
/**
* ()
*
* @type {(string | React.ReactNode)}
*/
title: string | React.ReactNode,
/**
* ()
*
* @type {(MenuItem | MenuSubMenu)}
*/
children?: JSX.Element[]
}
export class MenuSubMenu extends React.Component<MenuSubMenuProps, {}> {
render(): JSX.Element
}
interface MenuItemGroupProps {
/**
* ()
*
* @type {(string | React.ReactNode)}
*/
title: string | React.ReactNode,
/**
* ()
*
* @type {MenuItem}
*/
children?: JSX.Element[]
}
export class MenuItemGroup extends React.Component<MenuItemGroupProps, {}> {
render(): JSX.Element
}
// enum
enum MenuTheme {
light,
dark
}
enum MenuMode {
vertical,
horizontal,
inline
}
interface MenuProps {
/** 主题颜色*/
theme?: MenuTheme | string,
/** 菜单类型 enum: `vertical` `horizontal` `inline`*/
mode?: MenuMode | string,
/** 当前选中的菜单项 key 数组*/
selectedKeys?: Array<string>,
/** 初始选中的菜单项 key 数组*/
defaultSelectedKeys?: Array<string>,
/** 当前展开的菜单项 key 数组*/
openKeys?: Array<string>,
/** 初始展开的菜单项 key 数组*/
defaultOpenKeys?: Array<string>,
/**
*
*
* @type {(item: any, key: string, selectedKeys: Array<string>) => void}
*/
onSelect?: (item: any, key: string, selectedKeys: Array<string>) => void,
/** 取消选中时调用*/
onDeselect?: (item: any, key: string, selectedKeys: Array<string>) => void,
/** 点击 menuitem 调用此函数*/
onClick?: (item: any, key: string) => void,
/** 根节点样式*/
style?: Object
}
/**
# Menu
## 使
[](/spec/layout)*/
export class Menu extends React.Component<MenuProps, {}> {
static Item: typeof MenuItem
static SubMenu: typeof MenuSubMenu
static ItemGroup: typeof MenuItemGroup
static Divider: typeof React.Component
render(): JSX.Element
}
// Message
type MessageFunc = (
/** 提示内容*/
content: string,
/** 自动关闭的延时*/
duration?: number
) => void
/**
* #Message
## 使
-
- */
export const message: {
success: MessageFunc
error: MessageFunc
info: MessageFunc
loading: MessageFunc
config: (options: {
/**
*
*
* @type {number}
*/
top: number
}) => void
destroy: () => void
}
// Modal
type ModalFunc = (options: {
visible?: boolean,
title?: React.ReactNode | string,
2016-05-10 11:06:37 +08:00
content?: React.ReactNode | string,
2016-04-21 15:52:54 +08:00
onOk?: Function,
onCancel?: Function,
width?: string | number,
iconClassName?: string,
okText?: string,
cancelText?: string
}) => void
interface ModalProps {
/** 对话框是否可见*/
visible?: boolean,
/** 确定按钮 loading*/
confirmLoading?: boolean,
/** 标题*/
title?: React.ReactNode | string,
/** 是否显示右上角的关闭按钮*/
closable?: boolean,
/** 点击确定回调*/
onOk?: Function,
/** 点击遮罩层或右上角叉或取消按钮的回调*/
onCancel?: Function,
/** 宽度*/
width?: string | number,
/** 底部内容*/
footer?: React.ReactNode | string,
/** 确认按钮文字*/
okText?: string,
/** 取消按钮文字*/
cancelText?: string,
/** 点击蒙层是否允许关闭*/
maskClosable?: boolean
}
/**
# Modal
## 使
使 `Modal`
使 `ant.Modal.confirm()` */
export class Modal extends React.Component<ModalProps, {}> {
static info: ModalFunc
static success: ModalFunc
static error: ModalFunc
static confirm: ModalFunc
render(): JSX.Element
}
// Notification
type NotificationFunc = (
config: {
/** 通知提醒标题,必选 */
message: React.ReactNode | string,
/** 通知提醒内容,必选*/
description: React.ReactNode | string,
/** 自定义关闭按钮*/
btn?: React.ReactNode | string,
/** 当前通知唯一标志*/
key?: string,
/** 点击默认关闭按钮时触发的回调函数*/
onClose?: Function,
/** 默认 4.5 秒后自动关闭,配置为 null 则不自动关闭*/
duration?: number
}) => void
/**
* #notification
## 使
-
-
- */
export const notification: {
success: NotificationFunc
error: NotificationFunc
info: NotificationFunc
warn: NotificationFunc
close: (key: string) => void
destroy: () => void
config: (options: {
/** 消息距离顶部的位置*/
top: number
}) => void
}
// Pagination
interface PaginationProps {
/** 当前页数*/
current?: number,
/** 默认的当前页数*/
defaultCurrent?: number,
/** 数据总数*/
total: number,
/** 初始的每页条数*/
defaultPageSize?: number,
/** 每页条数*/
pageSize?: number,
/** 页码改变的回调,参数是改变后的页码*/
onChange?: Function,
/** 是否可以改变 pageSize */
showSizeChanger?: boolean,
/** 指定每页可以显示多少条*/
pageSizeOptions?: Array<number>
/** pageSize 变化的回调 */
onShowSizeChange?: Function,
/** 是否可以快速跳转至某页*/
showQuickJumper?: boolean,
/** 当为「small」时是小尺寸分页 */
size?: string,
/** 当添加该属性时,显示为简单分页*/
simple?: Object,
/** 用于显示总共有多少条数据*/
showTotal?: Function
}
/**
* #Pagination
## 使
- /
- */
export class Pagination extends React.Component<PaginationProps, {}> {
render(): JSX.Element
}
// Popconfirm
enum Placement {
top, left, right, bottom
}
interface PopconfirmProps {
/**
* `top/left/right/bottom`
*
* @type {(Placement | string)}
*/
placement?: Placement | string,
/** 确认框的描述*/
title?: string,
/** 点击确认的回调*/
onConfirm?: Function,
onCancel?: Function,
/** 显示隐藏的回调*/
onVisibleChange?: (visible: boolean) => void,
/** 确认按钮文字*/
okText?: string,
/** 取消按钮文字*/
cancelText?: string
}
/**
* #Popconfirm
## 使
`confirm`
*/
export class Popconfirm extends React.Component<PopconfirmProps, {}> {
render(): JSX.Element
}
// Popover
enum Trigger {
hover, focus, click
}
enum PopoverPlacement {
top,
left, right, bottom,
topLeft, topRight, bottomLeft, bottomRight,
leftTop, leftBottom, rightTop, rightBottom
}
interface PopoverProps {
/** 触发行为,可选 `hover/focus/click` */
trigger?: Trigger | string,
/** 气泡框位置,可选 `top/left/right/bottom` `topLeft/topRight/bottomLeft/bottomRight` `leftTop/leftBottom/rightTop/rightBottom`*/
placement?: PopoverPlacement | string,
/** 卡片标题*/
title?: React.ReactNode | string,
/** 卡片内容*/
overlay?: React.ReactNode | string,
prefixCls?: string,
/** 用于手动控制浮层显隐*/
visible?: boolean,
/** 显示隐藏改变的回调*/
onVisibleChange?: Function
}
/**
* #Popover
/
## 使
`Tooltip`
*/
export class Popover extends React.Component<PopoverProps, {}> {
render(): JSX.Element
}
// Progress
enum ProgressStatus {
normal,
exception,
active
}
interface LineProps {
/** 百分比*/
percent: number,
/** 内容的模板函数*/
format?: (percent: any) => void,
/** 状态可选normal、exception、active*/
status?: ProgressStatus | string,
/** 进度条线的宽度单位是px*/
strokeWidth?: number,
/** 是否显示进度数值和状态图标*/
showInfo?: boolean
}
export class Line extends React.Component<LineProps, {}> {
render(): JSX.Element
}
interface CircleProps {
/** 百分比*/
percent: number,
/** 内容的模板函数*/
format?: (percent: any) => void,
/** 状态可选normal、exception*/
status?: ProgressStatus | string,
/** 进度条线的宽度,单位是进度条画布宽度的百分比*/
strokeWidth?: number,
/** 必填进度条画布宽度单位px。这里没有提供height属性设置Line型高度就是strokeWidthCircle型高度等于width*/
width?: number
}
export class Circle extends React.Component<CircleProps, {}> {
render(): JSX.Element
}
/**
* #Progress
## 使
* 2
* */
export const Progress: {
Line: typeof Line,
Circle: typeof Circle
}
// QueueAnim
interface QueueAnimProps {
/** 动画内置参数 `left` `right` `top` `bottom` `scale` `scaleBig` `scaleX` `scaleY`*/
type?: string | Array<string>,
/** 配置动画参数 如 `{opacity:[1, 0],translateY:[0, -30]}` 具体参考 [velocity](http://julian.com/research/velocity) 的写法*/
animConfig?: Object | Array<any>,
/** 整个动画的延时,以毫秒为单位*/
delay?: number | Array<any>,
/** 每个动画的时间,以毫秒为单位*/
duration?: number | Array<any>,
/** 每个动画的间隔时间,以毫秒为单位*/
interval?: number | Array<any>,
/** 出场时是否倒放,从最后一个 dom 开始往上播放 */
leaveReverse?: boolean,
/** 动画的缓动函数,[查看详细](http://julian.com/research/velocity/#easing)*/
ease?: string | Array<any>,
/** 进出场动画进行中的类名*/
animatingClassName?: Array<string>,
/** QueueAnim 替换的标签名*/
component?: string
}
/**
* #QueueAnim
## 使
- A到内容B的转变过程时能有效的吸引用户注意力
- 使
-
*/
export class QueueAnim extends React.Component<QueueAnimProps, {}> {
render(): JSX.Element
}
// Radio
enum RadioGroupSize {
large,
default,
small
}
interface RadioGroupProps {
/** 选项变化时的回调函数*/
onChange?: (e: Event) => void,
/** 用于设置当前选中的值*/
value?: string,
/** 默认选中的值*/
defaultValue?: string,
/** 大小,只对按钮样式生效*/
size?: RadioGroupSize | string
}
export class RadioGroup extends React.Component<RadioGroupProps, {}> {
render(): JSX.Element
}
interface RadioProps {
/** 指定当前是否选中*/
checked?: boolean,
/** 初始是否选中*/
defaultChecked?: boolean,
/** 根据 value 进行比较,判断是否选中 */
value?: any
}
/**
* #Radio
## 使
-
- Select Radio 便
*/
export class Radio extends React.Component<RadioProps, {}> {
static Group: typeof RadioGroup
static Button: typeof Button
render(): JSX.Element
}
// Select
interface SelectOptionProps {
/** 是否禁用*/
disabled?: boolean,
/** 如果 react 需要你设置此项,此项值与 value 的值相同,然后可以省略 value 设置*/
key?: string,
/** 默认根据此属性值进行筛选*/
value: string
}
export class SelectOption extends React.Component<SelectOptionProps, {}> {
render(): JSX.Element
}
interface SelectOptGroupProps {
/** 组名*/
label: string | React.ReactNode,
key?: string
}
export class SelectOptGroup extends React.Component<SelectOptGroupProps, {}> {
render(): JSX.Element
}
interface SelectProps {
/** 指定当前选中的条目*/
value?: string | Array<any>,
/** 指定默认选中的条目*/
defaultValue?: string | Array<any>,
/** 支持多选*/
multiple?: boolean,
/** 支持清除, 单选模式有效*/
allowClear?: boolean,
/** 是否根据输入项进行筛选,可为一个函数,返回满足要求的 option 即可*/
filterOption?: boolean | Function,
/** 可以把随意输入的条目作为 tag输入项不需要与下拉选项匹配*/
tags?: boolean,
/** 被选中时调用,参数为选中项的 value 值 */
onSelect?: (value: any, option: any) => void,
/** 取消选中时调用,参数为选中项的 option value 值,仅在 multiple 或 tags 模式下生效*/
onDeselect?: (value: any, option: any) => void,
/** 选中option或input的value变化(combobox 模式下)时,调用此函数*/
onChange?: (value: any, label: any) => void,
/** 文本框值变化时回调*/
onSearch?: (value: string) => void,
/** 选择框默认文字*/
placeholder?: string,
/** 搜索框默认文字*/
searchPlaceholder?: string,
/** 当下拉列表为空时显示的内容*/
notFoundContent?: string,
/** 下拉菜单和选择器同宽*/
dropdownMatchSelectWidth?: boolean,
/** 搜索时过滤对应的 option 属性,如设置为 children 表示对内嵌内容进行搜索*/
optionFilterProp?: string,
/** 输入框自动提示模式*/
combobox?: SVGSymbolElement,
/** 选择框大小,可选 `large` `small` */
size?: string,
/** 在下拉中显示搜索框*/
showSearch?: boolean,
/** 是否禁用*/
disabled?: boolean,
style?: Object
}
/**
* #Select
Select2
## 使
*/
export class Select extends React.Component<SelectProps, {}> {
static Option: typeof SelectOption
static OptGroup: typeof SelectOptGroup
render(): JSX.Element
}
// Slider
interface SliderProps {
/** 最小值*/
min?: number,
/** 最大值*/
max?: number,
/** 步长,取值必须大于 0并且可被 (max - min) 整除。当 `marks` 不为空对象时,可以设置 `step` 为 `null`,此时 Slider 的可选值仅有 marks 标出来的部分。*/
step?: number,
/** 分段标记key 的类型必须为 `Number` 且取值在闭区间 [min, max] 内*/
marks?: { key: number, value: any },
/** 设置当前取值。当 `range` 为 `false` 时,使用 `Number`,否则用 `[Number, Number]`*/
value?: number | Array<number>,
/** 设置当前取值。当 `range` 为 `false` 时,使用 `Number`,否则用 `[Number, Number]`*/
defaultValue?: number | Array<number>,
/** `marks` 不为空对象时有效,值为 true 时表示值为包含关系false 表示并列*/
included?: boolean,
/** 值为 `true` 时,滑块为禁用状态*/
disabled?: boolean,
/** 当 `range` 为 `true` 时,该属性可以设置是否允许两个滑块交换位置。*/
allowCross?: boolean,
/** 当 Slider 的值发生改变时,会触发 onChange 事件,并把改变后的值作为参数传入。*/
onChange?: Function,
/** 与 `onmouseup` 触发时机一致,把当前值作为参数传入。*/
onAfterChange?: Function,
/** Slider 会把当前值传给 `tipFormatter`,并在 Tooltip 中显示 `tipFormatter` 的返回值,若为 null则隐藏 Tooltip。*/
tipFormatter?: Function | any,
range?: boolean
}
/**
* #Slider
## 使
/*/
export class Slider extends React.Component<SliderProps, {}> {
render(): JSX.Element
}
// Spin
interface SpinProps {
/** spin组件中点的大小可选值为 small default large*/
size?: string,
/** 用于内嵌其他组件的模式,可以关闭 loading 效果*/
spining?: boolean
}
/**
* #Spin
## 使
*/
export class Spin extends React.Component<SpinProps, {}> {
render(): JSX.Element
}
// Steps
enum StepStatus {
wait, process, finish
}
interface StepProps {
/** 可选参数指定状态。当不配置该属性时会使用父Steps元素的current来自动指定状态。*/
status?: StepStatus | string,
/** 必要参数,标题。*/
title: string | React.ReactNode,
/** 可选参数,步骤的详情描述。*/
description?: string | React.ReactNode,
/** 可选参数步骤的Icon。如果不指定则使用默认的样式。*/
icon?: string | React.ReactNode
}
export class Step extends React.Component<StepProps, {}> {
render(): JSX.Element
}
interface StepsProps {
/** 可选参数指定当前处理正在执行状态的步骤从0开始记数。在子Step元素中可以通过status属性覆盖状态。*/
current?: number,
/** 可选参数,指定大小(目前只支持普通和迷你两种大小)。 small, default */
size?: string,
/** 可选参数,指定步骤条方向(目前支持水平和竖直两种方向,默认水平方向)。*/
direction?: string,
/** 可选参数,指定步骤的详细描述文字的最大宽度。*/
maxDescriptionWidth?: number
}
/**
* #Steps
## 使
*/
export class Steps extends React.Component<StepsProps, {}> {
static Step: typeof Step
render(): JSX.Element
}
// Switch
interface SwitchProps {
/** 指定当前是否选中*/
checked?: boolean,
/** 初始是否选中*/
defaultChecked?: boolean,
/** 变化时回调函数*/
onChange?: (checked: boolean) => void,
/** 选中时的内容*/
checkedChildren?: React.ReactNode,
/** 非选中时的内容*/
unCheckedChildren?: React.ReactNode,
/** 开关大小*/
size?: string
}
/**
* #Switch
## 使
- /
- `checkbox ` `switch` `checkbox`
*/
export class Switch extends React.Component<SwitchProps, {}> {
render(): JSX.Element
}
// Table
enum RowSelectionType {
checkbox,
radio
}
type SelectedRowKeys = Array<any>
interface RowSelection {
type?: RowSelectionType | string,
selectedRowKeys?: SelectedRowKeys,
onChange?: (selectedRowKeys: SelectedRowKeys, selectedRows: any) => void,
getCheckboxProps?: (record: any) => void,
onSelect?: (record: any, selected: any, selectedRows: any) => void,
onSelectAll?: (rselectedecord: any, selectedRows: any, changeRows: any) => void
}
interface Columns {
/** React 需要的 key建议设置*/
key?: string,
/** 列头显示文字*/
title?: string | React.ReactNode,
/** 列数据在数据项中对应的 key*/
dataIndex?: string,
/** 生成复杂数据的渲染函数,参数分别为当前列的值,当前列数据,列索引,@return里面可以设置表格[行/列合并](#demo-colspan-rowspan)*/
render?: (text?: any, record?: any, index?: number) => React.ReactNode,
/** 表头的筛选菜单项*/
filters?: Array<any>,
/** 本地模式下,确定筛选的运行函数*/
onFilter?: Function,
/** 是否多选*/
filterMultiple?: boolean,
/** 排序函数,本地排序使用一个函数,需要服务端排序可设为 true */
sorter?: boolean | Function,
/** 表头列合并,设置为 0 时,不渲染*/
colSpan?: number,
/** 列宽度*/
width?: string | number,
/** 列的 className*/
className?: string
}
interface TableProps {
/** 列表项是否可选择*/
rowSelection?: RowSelection,
/** 分页器*/
pagination?: Object,
/** 正常或迷你类型 : `default` or `small` */
size?: string,
/** 数据数组*/
dataSource: Array<any>,
/** 表格列的配置描述*/
columns: Columns,
/** 表格行 key 的取值*/
rowKey?: (record: any, index: number) => string,
/** 额外的展开行*/
expandedRowRender?: Function,
/** 默认展开的行*/
defaultExpandedRowKeys?: Array<string>,
/** 分页、排序、筛选变化时触发*/
onChange?: (pagination: Object, filters: any, sorter: any) => void,
/** 页面是否加载中*/
loading?: boolean,
/** 默认文案设置,目前包括排序、过滤、空数据文案: `{ filterConfirm: '确定', filterReset: '重置', emptyText: '暂无数据' }` */
locale?: Object,
/** 展示树形数据时,每层缩进的宽度,以 px 为单位*/
indentSize?: number,
/** 处理行点击事件*/
onRowClick?: (record: any, index: number) => void,
/** 是否固定表头*/
useFixedHeader?: boolean,
/** 是否展示外边框和列边框*/
bordered?: boolean,
/** 是否显示表头*/
showHeader?: boolean,
/** 表格底部自定义渲染函数*/
footer?: (currentPageData: Object) => void
}
/**
* #Table
## 使
-
- */
export class Table extends React.Component<TableProps, {}> {
render(): JSX.Element
}
// Tabs
interface TabPaneProps {
/** 选项卡头显示文字*/
tab: React.ReactNode | string
}
export class TabPane extends React.Component<TabPaneProps, {}> {
render(): JSX.Element
}
enum TabsType {
line, card, 'editable-card'
}
enum TabsPosition {
top,
right,
bottom,
left
}
interface TabsProps {
/** 当前激活 tab 面板的 key */
activeKey?: string,
/** 初始化选中面板的 key如果没有设置 activeKey*/
defaultActiveKey?: string,
/** 切换面板的回调*/
onChange?: Function,
/** tab 被点击的回调 */
onTabClick?: Function,
/** tab bar 上额外的元素 */
tabBarExtraContent?: React.ReactNode,
/** 页签的基本样式,可选 `line`、`card` `editable-card` 类型*/
type?: TabsType | string,
/** 页签位置,可选值有 `top` `right` `bottom` `left`*/
tabPosition?: TabsPosition | string,
/** 新增和删除页签的回调,在 `type="editable-card"` 时有效*/
onEdit?: (targetKey: string, action: any) => void
}
/**
* #Tabs
## 使
Ant Design
-
- 线 Tabs
- [RadioButton](/components/radio/#demo-radiobutton) 使*/
export class Tabs extends React.Component<TabsProps, {}> {
static TabPane: typeof TabPane
render(): JSX.Element
}
// Tag
interface TagProps {
/** 标签是否可以关闭*/
closable?: boolean,
/** 关闭时的回调*/
onClose?: Function,
/** 动画关闭后的回调*/
afterClose?: Function,
/** 标签的色彩*/
color?: string
}
/**
* #Tag
## 使
-
- */
export class Tag extends React.Component<TagProps, {}> {
render(): JSX.Element
}
// TimePicker
interface TimePickerProps {
/** 默认时间*/
value?: string | Date,
/** 初始默认时间*/
defaultValue?: string | Date,
/** 展示的时间格式 : "HH:mm:ss"、"HH:mm"、"mm:ss" */
format?: string,
/** 时间发生变化的回调*/
onChange?: (Date: Date) => void,
/** 禁用全部操作*/
disabled?: boolean,
/** 没有值的时候显示的内容*/
placeholder?: string,
/** 国际化配置*/
locale?: Object,
/** 隐藏禁止选择的选项*/
hideDisabledOptions?: boolean,
/** 禁止选择部分小时选项*/
disabledHours?: Function,
/** 禁止选择部分分钟选项*/
disabledMinutes?: Function,
/** 禁止选择部分秒选项*/
disabledSeconds?: Function
}
/**
* #TimePicker
使
--------
*/
export class TimePicker extends React.Component<TimePickerProps, {}> {
render(): JSX.Element
}
// Timeline
interface TimeLineItemProps {
/** 指定圆圈颜色。*/
color?: string
}
export class TimeLineItem extends React.Component<TimeLineItemProps, {}> {
render(): JSX.Element
}
interface TimelineProps {
/** 指定最后一个幽灵节点是否存在或内容*/
pending?: boolean | React.ReactNode
}
/**
* #Timeline
## 使
-
- */
export class Timeline extends React.Component<TimelineProps, {}> {
static Item: typeof TimeLineItem
render(): JSX.Element
}
// Tooltip
interface TooltipProps {
/** 气泡框位置,可选 `top` `left` `right` `bottom` `topLeft` `topRight` `bottomLeft` `bottomRight` `leftTop` `leftBottom` `rightTop` `rightBottom`*/
placement?: PopoverPlacement | string,
/** 提示文字*/
title?: string | React.ReactNode
}
/**
* #Tooltip
## 使
`title` `按钮/文字/操作`*/
export class Tooltip extends React.Component<TooltipProps, {}> {
render(): JSX.Element
}
// Transfer
interface TransferProps {
/** 数据源*/
dataSource: Array<any>,
/** 每行数据渲染函数*/
render?: (record: Object) => any,
/** 显示在右侧框数据的key集合*/
targetKeys: Array<string>,
/** 变化时回调函数*/
onChange?: (targetKeys: any, direction: string, moveKeys: any) => void,
/** 两个穿梭框的自定义样式*/
listStyle?: Object,
/** 自定义类*/
className?: string,
/** 标题集合,顺序从左至右*/
titles?: Array<string>,
/** 操作文案集合,顺序从上至下*/
operations?: Array<string>,
/** 是否显示搜索框*/
showSearch?: boolean,
/** 搜索框的默认值*/
searchPlaceholder?: string,
/** 当列表为空时显示的内容*/
notFoundContent?: React.ReactNode | string
/** 底部渲染函数*/
footer?: (props: any) => any
}
/**
* #Transfer
穿
## 使
*/
export class Transfer extends React.Component<TransferProps, {}> {
render(): JSX.Element
}
// Tree
interface TreeNodeProps {
disabled?: boolean,
disableCheckbox?: boolean,
title?: string | React.ReactNode,
key?: string,
isLeaf?: boolean
}
export class TreeNode extends React.Component<TreeNodeProps, {}> {
render(): JSX.Element
}
interface TreeProps {
showLine?: boolean,
className?: string,
/** 是否支持多选*/
multiple?: boolean,
/** 是否支持选中*/
checkable?: boolean,
/** 默认展开所有树节点*/
defaultExpandAll?: boolean,
/** 默认展开指定的树节点*/
defaultExpandedKeys?: Array<string>,
/** (受控)展开指定的树节点*/
expandedKeys?: Array<string>,
/** (受控)选中复选框的树节点*/
checkedKeys?: Array<string>,
/** 默认选中复选框的树节点*/
defaultCheckedKeys?: Array<string>,
/** (受控)设置选中的树节点*/
selectedKeys?: Array<string>,
/** 默认选中的树节点*/
defaultSelectedKeys?: Array<string>,
/** 展开/收起节点时触发 */
onExpand?: (node: any, expanded: any, expandedKeys: any) => void,
/** 点击复选框触发*/
onCheck?: (checkedKeys: any, e: { checked: boolean, checkedNodes: any, node: any, event: Event }) => void,
/** 点击树节点触发*/
onSelect?: (selectedKeys: any, e: { selected: boolean, selectedNodes: any, node: any, event: Event }) => void,
/** filter some treeNodes as you need. it should return true */
filterTreeNode?: (node: any) => boolean,
/** 异步加载数据*/
loadData?: (node: any) => void,
/** 响应右键点击*/
onRightClick?: (options: { event: Event, node: any }) => void,
/** 设置节点可拖拽IE>8*/
draggable?: boolean,
/** 开始拖拽时调用*/
onDragStart?: (options: { event: Event, node: any }) => void,
/** dragenter 触发时调用*/
onDragEnter?: (options: { event: Event, node: any, expandedKeys: any }) => void,
/** dragover 触发时调用 */
onDragOver?: (options: { event: Event, node: any }) => void,
/** dragleave 触发时调用*/
onDragLeave?: (options: { event: Event, node: any }) => void,
/** drop 触发时调用*/
onDrop?: (options: { event: Event, node: any, dragNode: any, dragNodesKeys: any }) => void,
}
/**
* #Tree
* 使`树控件`
*/
export class Tree extends React.Component<TreeProps, {}> {
static TreeNode: typeof TreeNode
render(): JSX.Element
}
// TreeSelect
interface TreeSelectTreeNodeProps {
disabled?: boolean,
/** 此项必须设置(其值在整个树范围内唯一)*/
key: string,
/** 默认根据此属性值进行筛选*/
value?: string,
/** 树节点显示的内容*/
title?: React.ReactNode | string,
/** 是否是叶子节点*/
isLeaf?: boolean
}
export class TreeSelectTreeNode extends React.Component<TreeSelectTreeNodeProps, {}> {
render(): JSX.Element
}
type TreeData = Array<{ value: any, label: string, children: TreeData }>
interface TreeSelectProps {
style?: Object,
/** 指定当前选中的条目*/
value?: string | Array<any>,
/** 指定默认选中的条目*/
defaultValue?: string | Array<any>,
/** 支持多选*/
multiple?: boolean,
/** 可以把随意输入的条目作为 tag输入项不需要与下拉选项匹配*/
tags?: boolean,
/** 被选中时调用,参数为选中项的 value 值*/
onSelect?: (value: any) => void,
/** 选中option或input的value变化(combobox 模式下)时,调用此函数*/
onChange?: (value: any, label: any) => void,
/** 显示清除按钮*/
allowClear?: boolean,
/** 文本框值变化时回调*/
onSearch?: (value: any) => void,
/** 选择框默认文字*/
placeholder?: string,
/** 搜索框默认文字*/
searchPlaceholder?: string,
/** 下拉菜单的样式*/
dropdownStyle?: Object,
/** 下拉菜单和选择器同宽*/
dropdownMatchSelectWidth?: boolean,
/** 输入框自动提示模式*/
combobox?: boolean,
/** 选择框大小,可选 `large` `small`*/
size?: string,
/** 在下拉中显示搜索框*/
showSearch?: boolean,
/** 是否禁用*/
disabled?: boolean,
/** 默认展开所有树节点*/
treeDefaultExpandAll?: boolean,
/** 显示checkbox*/
treeCheckable?: boolean,
/** 是否根据输入项进行筛选返回值true*/
filterTreeNode?: (treeNode: any) => boolean,
/** 输入项过滤对应的 treeNode 属性*/
treeNodeFilterProp?: string,
/** 作为显示的prop设置*/
treeNodeLabelProp?: string,
/** treeNodes数据如果设置则不需要手动构造TreeNode节点如果value在整个树范围内不唯一需要设置`key`其值为整个树范围内的唯一id*/
treeData?: TreeData,
/** 异步加载数据*/
loadData?: (node: any) => void
}
/**
* #TreeSelect
## 使
Select 使 TreeSelect
*/
export class TreeSelect extends React.Component<TreeSelectProps, {}> {
static TreeNode: typeof TreeSelectTreeNode
render(): JSX.Element
}
// Upload
interface UploadProps {
/** 可选参数, 上传的文件 */
name?: string,
/** 必选参数, 上传的地址 */
action: string,
/** 可选参数, 上传所需参数 */
data?: Object,
/** 可选参数, 设置上传的请求头部IE10 以上有效*/
headers?: Object,
/** 可选参数, 是否展示 uploadList, 默认开启 */
showUploadList?: boolean,
/** 可选参数, 是否支持多选文件,`ie10+` 支持。开启后按住 ctrl 可选择多个文件。*/
multiple?: boolean,
/** 可选参数, 接受上传的文件类型, 详见 input accept Attribute */
accept?: string,
/** 可选参数, 上传文件之前的钩子,参数为上传的文件,若返回 `false` 或者 Promise 则停止上传。**注意:该方法不支持老 IE**。*/
beforeUpload?: Function,
/** 可选参数, 上传文件改变时的状态,详见 onChange */
onChange?: (info: Object) => void,
/** 上传列表的内建样式,支持两种基本样式 `text` or `picture` */
listType?: string,
/** 自定义类名*/
className?: string
}
/**
* #Upload
## 使
-
-
- 使*/
export class Upload extends React.Component<UploadProps, {}> {
render(): JSX.Element
}
}
export = Antd