react自定义TextArea组件,不被拉伸

自定义一个TextArea组将文本框内的所有英文字母变为大写,其中还有文本框不被拉伸的代码。

//自定义的富文本框
const MyTextArea= ()=>{
  //自定义一个将输入框内容(英文字母)变为大写的输入组件
  //textareaRef用来获取当前的input对象
  const textareaRef =  useRef();

  //textareaValue用来设置input框内的文本的
  const [textareaValue,setInputValue] =  useState('');
  
  //handleOnChange用于处理用户在input框内输入内容的时候的响应函数
  const handelOnChange = ()=>{
    setInputValue(()=>textareaRef?.current?.resizableTextArea?.textArea?.value.toUpperCase());
  }

  return(
   <>
      <TextArea 
        placeholder='Please Enter' 
        ref = {textareaRef} 
        onChange={handelOnChange} 
        value={textareaValue}
        autoSize={{
          minRows:2,
          maxRows:6       //autoSize可以让文本框不被拉伸
        }}
        style={{
          width:'300px'
        }}
      ></TextArea>
    </>
  )
}

export default MyTextArea;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值