当前位置: 首页 > 面试题库 >

有没有办法在React.render()函数中渲染多个React组件?

沃阳曜
2023-03-14
问题内容

例如我可以做:

import React from 'react';
import PanelA from './panelA.jsx';
import PanelB from './panelB.jsx';

React.render( 
  <PanelA />
  <PanelB />, 
  document.body  
);

React将在哪里渲染:

body
   PanelA
   PanelB

目前,我遇到了错误:

Adjacent JSX elements must be wrapped in an enclosing tag

在使用browserify和babelify进行转译时


问题答案:

从React v16.0版本开始,当您位于组件内部时,您可以呈现一个组件数组,而无需在额外的元素中包装项目:

render() {
  return [
    <li key="one">First item</li>,
    <li key="two">Second item</li>,
    <li key="three">Third item</li>,
    <li key="four">Fourth item</li>,
  ];
}

切记仅设置按键。

更新

现在从16.2版本开始,您可以使用片段

  render() {
    return (
      <React.Fragment>
        <td>Hello</td>
        <td>World</td>
      </React.Fragment>
    );
  }

短语法

  render() {
    return (
      <>
        <td>Hello</td>
        <td>World</td>
      </>
    );
  }

在,ReactDOM.render您仍然无法渲染多个项目,因为react需要一个根。因此,您可以在中渲染单个组件,ReactDOM.render并在内部组件中渲染一系列项目。



 类似资料:
  • 我想这样做(显然不工作)< br >我可以将结果存储在一个状态中,并在< code>render()方法中呈现组件,但问题是我进行了许多调用,并将有许多res对象。我最终会有许多状态要维护,所以我想在< code>axios调用后只返回一个组件,而不是每次都改变许多状态。这可能吗?< br >

  • 我想知道我是否可以使用MathJax渲染LaTeX符号,而不封装LaTeX符号周围的\(......\)。例如,对于\frac{2}{3}而不是\(\frac{2}{3}\),如果是,我如何设置它? 非常感谢!

  • 嗨,我是新来的反应本机和尝试渲染组件调用一个函数内渲染,但它似乎不工作。 我的职能: 如果我这样做,效果会更好: 但不是这个: 我不明白为什么第二个代码不起作用

  • 抱歉,如果这是一个初学者问题 我正在尝试使用功能组件,因为我一直在做类组件。 我有一个简单的组件,它应该从服务器加载一个列表,并显示它。 组件如下所示(如果有类型,我有点抱歉): 我面临的问题是,每次使用setList时,组件都会被重新绘制,因此http调用会被重新执行。 除了使用类组件之外,还有其他方法可以防止这种情况吗?

  • 问题内容: 有没有一种方法可以使用Amazon的Java AWS开发工具包中的单个查询来查询多个哈希键? 这是我的问题;我有一个用于项目状态的数据库表。哈希键是项目的状态(即:新建,已分配,正在处理或已完成)。范围键是一组项目ID。当前,我有一个查询设置,可以简单地找到所有列为“已分配”状态(哈希)的项目,而另一个查询集可以查找“处理中”状态。有没有一种方法可以使用单个查询而不是针对我需要找到的每

  • 我目前有一个firebase项目,定义了多个云功能。每个函数都位于自己的文件夹中,其中包含两个文件:index。js和软件包。json。据我所知,可以将所有这些函数导入索引。在默认函数文件夹中创建js文件并导出它们。然而,这种方法导致在同一个实例上部署所有功能。有没有办法强迫他们在自己的实例上部署?非常感谢。