@flatbiz/antd
Version:
67 lines (64 loc) • 2.2 kB
TypeScript
import { MentionProps } from 'antd';
export type MentionsWrapperRef = {
getInputInstance: () => any;
};
export type MentionsWrapperProps = Omit<MentionProps, "value" | "onChange" | "onClick" | "onCursorChange" | "options" | "id" | "split" | "validateSearch" | "ref" | "prefix"> & {
value?: string;
onChange?: (value?: string) => void;
/** 设置列表提示关键字,例如:@、$等 */
prefix?: string | string[];
onClick?: (value?: string) => void;
/** 光标移动回调 */
onCursorChange?: (position: number) => void;
/**
* 输入框内整体关键词列表
* ```
* 整体关键词交互
* 1. 光标可整体移动
* 2. 光标不会存在关键词内部
* 3. 删除时,整体删除
* ```
*/
options?: string[];
};
/**
* 基于Antd Mentions进行二次封装,可实现输入内关键字整体控制,包括光标移动、关键词删除等
* ```
* 可实现
* 1. 控制光标输入
* 2. 可设置关键词,光标不会出现在关键词内部
* 3. 可整体删除关键词
*
* 应用场景例如:
* 1. 公式输入
* (【xx金额1】+【xx金额2】)*2
* <MentionsWrapper prefix="$" options={['【xx金额1】', '【xx金额2】']}/>
*
* 2. 短信模板设置
* 您的订单号为${订单号},订单交易时间为${订单时间}
* <MentionsWrapper prefix="$" options={['${订单号}', '${订单时间}']}/>
*
* demo:https://fex.qa.tcshuke.com/docs/admin/main/other/widget
* ```
*
*/
export declare const MentionsWrapper: import("react").ForwardRefExoticComponent<Omit<MentionProps, "value" | "onChange" | "onClick" | "onCursorChange" | "options" | "id" | "split" | "validateSearch" | "ref" | "prefix"> & {
value?: string;
onChange?: (value?: string) => void;
/** 设置列表提示关键字,例如:@、$等 */
prefix?: string | string[];
onClick?: (value?: string) => void;
/** 光标移动回调 */
onCursorChange?: (position: number) => void;
/**
* 输入框内整体关键词列表
* ```
* 整体关键词交互
* 1. 光标可整体移动
* 2. 光标不会存在关键词内部
* 3. 删除时,整体删除
* ```
*/
options?: string[];
} & import("react").RefAttributes<MentionsWrapperRef>>;
export {};