@cainiaofe/cn-ui-m
Version:
109 lines (108 loc) • 2.67 kB
TypeScript
import * as React from 'react';
export interface CnInputTextAreaProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'onFocus' | 'onBlur'> {
/**
* 自定义类名
*/
className?: string;
/**
* 是否在form.item中(textarea中不生效)
* @ignore 内部使用
*/
insideForm?: boolean;
/**
* 主题颜色控制
*/
type?: 'normal' | 'inverse';
/**
* 输入值(受控)
*/
value?: string | number;
/**
* 默认输入值 (非受控)
*/
defaultValue?: string | number;
/**
* 占位文案
*/
placeholder?: string;
/**
* 指定键盘类型
*/
keyboardType?: 'password' | 'default' | 'ascii-capable' | 'numbers-and-punctuation' | 'url' | 'number-pad' | 'phone-pad' | 'name-phone-pad' | 'email-address' | 'decimal-pad' | 'twitter' | 'Web-search' | 'numeric';
/**
* 是否使用初始的 ref 值
*/
useOriginalRef?: boolean;
/**
* 状态 'loading' | 'warning' | 'success' | 'error'
*/
state?: 'normal' | 'loading' | 'warning' | 'success' | 'error';
/**
* 最大长度
*/
maxLength?: number;
/**
* 是否展现最大长度样式
*/
showLimitHint?: boolean;
/**
* 文本框为只读态
*/
readOnly?: boolean;
/**
* 禁止输入
*/
disabled?: boolean;
/**
* 初始化时自动获得焦点
*/
autoFocus?: boolean;
/**
* 文本对齐方式 'left' | 'right'
*/
align?: 'left' | 'right';
/**
* 行数,默认是3
*/
rows?: number;
/**
* 是否为受控模式
*/
controlled?: boolean;
/**
* 聚焦高亮
*/
highlightable?: boolean;
/**
* 开启后会过滤输入法中间字母状态,文字输入完成后才会触发 onChange
*/
composition?: boolean;
/**
* 聚焦事件回调
*/
onFocus?: (e?: React.FormEvent<HTMLInputElement>) => void;
/**
* 点击清空按钮 事件回调
*/
onClear?: (e?: any) => void;
/**
* 失焦事件回调
*/
onBlur?: (e?: React.FormEvent<HTMLInputElement>) => void;
/**
* 值改变时触发的回调函数
*/
onChange?: (val: string, e?: React.FormEvent<HTMLInputElement>) => void;
/**
* 确定事件回调
*/
onConfirm?: (val: string, e: React.FormEvent<HTMLInputElement>) => void;
/**
* 输入合成开始时 事件回调
*/
onCompositionStart?: (e?: any) => void;
/**
* 输入合成结束时 事件回调
*/
onCompositionEnd?: (e?: any) => void;
}