@nutui/nutui-react-taro
Version:
京东风格的轻量级移动端 React 组件库,支持一套代码生成 H5 和小程序
77 lines (76 loc) • 1.82 kB
TypeScript
import { default as React, FunctionComponent } from 'react';
import { PopupProps } from '../popup/popup.taro';
import { PopoverTheme, PopoverLocation, PopoverList } from './types';
export interface PopoverProps extends PopupProps {
/**
* 选项列表
* @default []
*/
list: PopoverList[]
theme: PopoverTheme | string;
/**
* 弹出位置,里面具体的参数值可以参考上面的位置自定义例子
* @default bottom
*/
location: PopoverLocation | string
/**
* 是否展示气泡弹出层
* @default false
*/
visible: boolean
/**
* 出现位置的偏移量
* @default [0, 12]
*/
offset: string[] | number[]
arrowOffset: number;
/**
* 自定义目标元素 id
* @default -
*/
targetId: string
/**
* 是否显示小箭头
* @default true
*/
showArrow: boolean
/**
* 是否在点击外部元素后关闭菜单
* @default true
*/
closeOnOutsideClick: boolean
/**
* 是否在点击选项后关闭
* @default true
*/
closeOnActionClick: boolean
children?: React.ReactNode;
/**
* 点击切换 popover 展示状态
* @default () => {}
*/
onClick: () => void
/**
* 点击菜单时触发
* @default () => {}
*/
onOpen: () => void
/**
* 关闭菜单时触发
* @default () => {}
*/
onClose: () => void
/**
* 点击选项时触发
* @default (item, index) => {}
*/
onSelect: (item: PopoverList, index: number) => void
}
export interface RootPosition {
width: number;
height: number;
left: number;
top: number;
right: number;
}
export declare const Popover: FunctionComponent<Partial<PopoverProps> & Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'>>;