ReactJs中来自API响应的表呈现问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ReactJs中来自API响应的表呈现问题相关的知识,希望对你有一定的参考价值。

我是新来的响应者,在显示表格时遇到了一些问题。当我尝试使用State渲染数据时,将渲染整个字符串值,而不是实际的表。

浏览器中显示的一小段数据:

enter image description here

但是当我将数据从屏幕复制粘贴到render()方法时,表格将正确显示。当前的渲染方法-

render() 
  this.setValueForState();
  return (
    <div>
      <table>
        <thead>
          <tr>
            this.state.Header
          </tr>
        </thead>
        <tbody>
          this.state.Detail
        </tbody>
      </table>
    </div>
  );

我在控制台中收到以下错误。我确保数据中没有空白。

index.js:1警告:validateDOMNesting(...):文本节点不能显示为<tr>的子级。警告:validateDOMNesting(...):文本节点不能显示为<tbody>的子级。

我在线查找了该错误以查找上述错误,并从结果字符串中删除了所有空格。

不确定我在做什么错。

答案

this.state.Headerthis.state.Detail是字符串,它们被渲染为文本节点。如错误消息所述,您无法像完成操作一样将文本节点放入<tr><tbody>标签中。html表需要文本节点位于<td>标记内。有效的表格标记请参见下文。

<div>
  <table>
    <thead>
      <tr>
        <td>this.state.Header</td>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>this.state.Detail</td>
      </tr>
    </tbody>
  </table>
</div>
另一答案

请删除一些空白。您可以尝试以下

<tr key=id>this.state.Header</tr>;

以上是关于ReactJs中来自API响应的表呈现问题的主要内容,如果未能解决你的问题,请参考以下文章

无法在 React 中呈现来自 REST API GET(在 Django 中管理)响应的数据

IE 11问题-自动缓存来自GET请求的响应-Reactjs

reactjs中如何使用map函数和渲染列表

我如何使用 fetch API 并在状态下存储响应?

如何使用 API 响应中的 HTML 标记 [重复]

如何在django api调用的react js中使用来自post请求的响应部分的数据?