Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 我想要在TextArea中以相同格式输入的文本_Html_Reactjs_Antd_Ant Design Pro - Fatal编程技术网

Html 我想要在TextArea中以相同格式输入的文本

Html 我想要在TextArea中以相同格式输入的文本,html,reactjs,antd,ant-design-pro,Html,Reactjs,Antd,Ant Design Pro,我使用的是AntDesign的TextArea,比如说,当我在其中输入2-3个段落,然后按enter键将其显示为一行,但它在一个段落中显示所有内容。我想要输入文本区域时所做的精确格式。怎么做 我只是使用文本区域- <TextArea rows={2} style={{ width: "100%" }} defaultValue={this.state.value} onClick={this.handleValue} /> 我从结果中

我使用的是AntDesign的TextArea,比如说,当我在其中输入2-3个段落,然后按enter键将其显示为一行,但它在一个段落中显示所有内容。我想要输入文本区域时所做的精确格式。怎么做

我只是使用文本区域-

  <TextArea
     rows={2}
     style={{ width: "100%" }}
     defaultValue={this.state.value}
     onClick={this.handleValue}
  />
我从结果中得到了什么

Hey, how are you doing today? I am fine. i hope your are fine do give me a call when you are free. contact - 1234567890

因此,我认为没有一种简单的方法可以做到这一点(即使这种方法并不难)

您需要做的是获取
文本区域的每一行,您应该能够通过以下方式获取:

var textArea = document.getElementById("my-text-area");
var arrayOfLines = textArea.value.split("\n");
来源:
https://stackoverflow.com/questions/9196954/how-to-read-line-by-line-of-a-text-area-html-tag


一旦你有了
arrayOfLines
,你就可以用一个
for()
循环来输出文本了。

所以我认为没有一个简单的方法可以做到这一点(即使这样做并不难)

您需要做的是获取
文本区域的每一行,您应该能够通过以下方式获取:

var textArea = document.getElementById("my-text-area");
var arrayOfLines = textArea.value.split("\n");
来源:
https://stackoverflow.com/questions/9196954/how-to-read-line-by-line-of-a-text-area-html-tag


一旦你有了
arrayOfLines
,你就可以输出文本,就像用一个小小的
for()
循环一样。

在我看来,问题在于
样式={{width:“100%”}
。尝试限制文本区域的宽度。例如:
style={{width:“100px”}
在我看来,问题在于
style={{width:“100%”}
。尝试限制文本区域的宽度。例如:
style={{width:“100px”}

您可以使用
pre
标记来显示输入的内容

我使用
vanilla JS
创建了以下示例。您可以在
react
中实现相同的功能


函数handleValue(){ var tarea=document.getElementById('tarea'); var disp=document.getElementById('display'); disp.innerHTML=''+tarea.value+'';
function App() {
  const [text, setText] = React.useState("");

  function handleChange(e) {
    if (e.key === "Enter") {
      setText(`${e.target.value}\n`);
    }
    setText(e.target.value);
  }

  return (
    <div>
      <TextArea
        rows={4}
        value={text}
        onChange={handleChange}
        onPressEnter={handleChange}
      />

      {text.length > 0 && text.split("\n").map((l, i) => <p key={i}>{l}</p>)}
    </div>
  );
}
}
您可以使用
pre
标记显示输入的内容

我使用
vanilla JS
创建了以下示例。您可以在
react
中实现相同的功能


函数handleValue(){ var tarea=document.getElementById('tarea'); var disp=document.getElementById('display'); disp.innerHTML=''+tarea.value+'';
function App() {
  const [text, setText] = React.useState("");

  function handleChange(e) {
    if (e.key === "Enter") {
      setText(`${e.target.value}\n`);
    }
    setText(e.target.value);
  }

  return (
    <div>
      <TextArea
        rows={4}
        value={text}
        onChange={handleChange}
        onPressEnter={handleChange}
      />

      {text.length > 0 && text.split("\n").map((l, i) => <p key={i}>{l}</p>)}
    </div>
  );
}
}
下面提供了此任务的两个选项:

  • 在按键“Enter”时,将换行符附加到该行。显示文本时,在换行符上拆分 ); }
  • 下面提供了此任务的两个选项:

  • 在按键“Enter”时,将换行符附加到该行。显示文本时,在换行符上拆分 ); }
  • 正如AdityaSrivast所说,您可以使用pre标记。但是要包装文本,您应该在CSS下面添加

    
    前{
    溢出-x:自动;
    空白:预包装;
    空白:-moz预包装;
    空白:-预包装;
    空白:-o形预包装;
    单词包装:打断单词;
    }
    

    否则,文本将显示为一行。

    正如AdityaSrivast所说,您可以使用pre标记。但是要包装文本,您应该在CSS下面添加

    
    前{
    溢出-x:自动;
    空白:预包装;
    空白:-moz预包装;
    空白:-预包装;
    空白:-o形预包装;
    单词包装:打断单词;
    }
    

    否则,文本将显示为一行。

    这只是我正在使用的文本区域……我已在@Peterdo上面添加了该区域。您还需要关于此问题的帮助吗?请让我知道或将我的答案标记为已接受。谢谢。这只是我正在使用的文本区域……我在@Peterdo上面添加了这个区域。你需要更多的帮助来回答这个问题吗?请让我知道或将我的答案标记为已接受。谢谢你。不是阵列,我也必须改变后端。不是阵列,我也必须改变后端
    function App() {
      const [text, setText] = React.useState("");
    
      function handleChange(e) {
        setText(e.target.value);
      }
    
      return (
        <div>
          <TextArea
            rows={4}
            value={text}
            onChange={handleChange}
            onPressEnter={handleChange}
          />
    
          <pre>{text}</pre>
        </div>
      );
    }
    
    <style>
         pre {
            overflow-x: auto;
            white-space: pre-wrap;
            white-space: -moz-pre-wrap;
            white-space: -pre-wrap;
            white-space: -o-pre-wrap;
            word-wrap: break-word;
         }
      </style>