UNPKG

@gizwits/vantui

Version:

机智云组件库

129 lines (122 loc) 2.7 kB
import React, { FunctionComponent, ReactNode } from 'react' import { ViewProps } from '@tarojs/components' /** * @title DropdownMenuProps */ export interface DropdownMenuProps extends ViewProps { /** * @description 选中选项后颜色 */ activeColor?: string /** * @description 是否展示蒙层 */ overlay?: boolean /** * @description 弹出层zIndex */ zIndex?: number /** * @description 弹出层执行时间 */ duration?: number /** * @description 弹出层执行方向 */ direction?: 'down' | 'up' /** * @description 点击蒙层是否关闭弹出层 */ closeOnClickOverlay?: boolean /** * @description 是否在点击外部 menu 后关闭菜单 */ closeOnClickOutside?: boolean /** * @description 子元素,须为DropdownMenuItem */ children: React.ReactNode } /** * @title DropdownItemProps */ export interface DropdownItemProps extends ViewProps { /** * @description 对应菜单选项的值 */ value?: string | number /** * @description 未选择时候的按钮标题 */ title?: ReactNode /** * @description 是否禁用 */ disabled?: boolean /** * @description 标题元素的class */ titleClass?: string /** * @description 所有选项 */ options: Array<DropdownMenuOption> /** * @description 弹出层的样式 */ popupStyle?: React.CSSProperties /** * @description 展开下拉项触发 */ onOpen?: () => void /** * @description 展开下拉项完成时触发 */ onOpened?: () => void /** * @description 关闭下拉项触发 */ onClose?: () => void /** * @description 展开下拉项完成触发 */ onClosed?: () => void /** * @description 点击选项触发 */ onChange?: (value?: number | string) => void /** * @description 传入的子元素 */ children?: React.ReactNode | React.ReactNode[] } /** * @title 菜单下拉选项DropdownMenuOption */ export type DropdownMenuOption = { /** * @description 展示的label */ text?: ReactNode /** * @description 对应的数值 */ value: number | string /** * @description 前缀图标 */ icon?: string } /** * @title 组件实例 * @description 通过ref获取到的方法如下 */ export type IDropdownItemInstance = { /** * @description 控制展开/收起菜单栏,传入参数show是否展开,options.immediate是否不需要动画 */ toggle: (show?: boolean, options?: { immediate: boolean }) => void } declare const DropdownItem: FunctionComponent<DropdownItemProps> declare const DropdownMenu: FunctionComponent<DropdownMenuProps> export { DropdownMenu, DropdownItem }