ios 上textarea placeholder不换行的问题

大号在练葵花宝典  金牌会员 | 2024-6-26 04:35:02 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 824|帖子 824|积分 2472

发现在ios上placeholder过长时,删除内容后不换行的问题,但是重新点击textarea以后又正常了,试了一下让其重新聚焦,貌似是可以了,具体情况请具体分析,这里记录一下。

  1. const onTaChange = (value) => {
  2.     setContent(value)
  3.     if ((!value || value.length === 0)) {
  4.         if (ref){
  5.             //重新聚焦
  6.             ref.current.blur()
  7.             ref.current.focus()
  8.         }
  9.     }
  10. }
复制代码
 
  1. import './ques.css'
  2. import {TextArea} from "antd-mobile";
  3. import {useRef, useState} from "react";
  4. export const Question = () => {
  5.     const [content, setContent] = useState('')
  6.     const [placeholder,setPlaceHolder] = useState('在onchange里面计算最新的字数长度,再把最大长度提取成一个state存起来,直接   【  最新长度/最大长度  】就ok了')
  7.     const [maxLen, setMaxLen] = useState(200)
  8.     const ref = useRef()
  9.     const getContentCount = () => {
  10.         return (
  11.             <div className='ta-count-box'>
  12.                 {content ? content.length : 0}/{maxLen}
  13.             </div>
  14.         )
  15.     }
  16.     const onTaChange = (value) => {
  17.         setContent(value)
  18.         if ((!value || value.length === 0)) {
  19.             if (ref){
  20.                 ref.current.blur()
  21.                 ref.current.focus()
  22.             }
  23.         }
  24.     }
  25.     return (
  26.         <div className="que-box">
  27.             <TextArea
  28.                 ref={ref}
  29.                 style={{ whiteSpace: 'pre-wrap' }}
  30.                 id={'textarea'}
  31.                 autoSize
  32.                 maxLength={maxLen}
  33.                 placeholder={placeholder}
  34.                 rows={10}
  35.                 showCount={getContentCount}
  36.                 onChange={onTaChange}
  37.             >
  38.             </TextArea>
  39.         </div>
  40.     )
  41. }
复制代码
 
css:
  1. .que-box{
  2.     margin: 15px;
  3. }
  4. .ta-count-box{
  5.     width: 100%;
  6.     text-align: right;
  7. }
  8. ::-webkit-input-placeholder { /* Webkit browsers*/
  9.     white-space: pre-wrap!important;
  10. }
  11. :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
  12.     color: red!important;
  13. }
  14. :-moz-placeholder { /* Mozilla Firefox 19+ */
  15.     color: red!important;
  16. }
  17. :-ms-input-placeholder { /* Internet Explorer 10+ */
  18.     color: red!important;
  19. }
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

大号在练葵花宝典

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表