Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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
Javascript 如何将子节点与JSX组合?_Javascript_Reactjs_React Jsx - Fatal编程技术网

Javascript 如何将子节点与JSX组合?

Javascript 如何将子节点与JSX组合?,javascript,reactjs,react-jsx,Javascript,Reactjs,React Jsx,我想用li元素建立一个ul列表,但是li元素将来自不同的来源,所以我不能在一个语句中完成。JSX似乎无法处理一组子元素,这给了我一个语法错误: var items = <li>S</li> <li>S</li> <li>S</li>; var items=S S; 理想情况下,我想做以下事情: var items1 = <li>S</li> <li>S</li>

我想用li元素建立一个ul列表,但是li元素将来自不同的来源,所以我不能在一个语句中完成。JSX似乎无法处理一组子元素,这给了我一个语法错误:

var items = <li>S</li>
  <li>S</li>
  <li>S</li>;
var items=
  • S
  • S
  • 理想情况下,我想做以下事情:

    var items1 = <li>S</li>
      <li>S</li>
      <li>S</li>;
    var items2 = <li>S</li>
      <li>S</li>
      <li>S</li>;
    var list = <ul>{items1}{items2}</ul>;
    
    var items1=
  • S
  • S
  • ; var items2=
  • S
  • S
  • ; var list=
      {items1}{items2}

    还有其他方法可以实现这一点吗?

    JSX直接使用Javascript语法,因此您可以自由地混合使用

    /** @jsx React.DOM */
    var items1 = [ <li>S</li>,            var items1 = [ React.DOM.li({}, "S"),
                   <li>S</li>,                           React.DOM.li({}, "S"),
                   <li>S</li> ];                         React.DOM.li({}, "S") ];
    var items2 = [ <li>S</li>,            var items2 = [ React.DOM.li({}, "S"),
                   <li>S</li>,                           React.DOM.li({}, "S"),
                   <li>S</li> ];                         React.DOM.li({}, "S") ];
    var list = <ul>{items1+items2}</ul>;  var list = React.DOM.ul({}, items1+items2);
    
    /**@jsx React.DOM*/
    var items1=[
  • S
  • ,var items1=[React.DOM.li({},“S”),
  • S
  • ,React.DOM.li({},“S”),
  • S
  • ];React.DOM.li({},“S”); var items2=[
  • S
  • ,var items2=[React.DOM.li({},“S”),
  • S
  • ,React.DOM.li({},“S”),
  • S
  • ];React.DOM.li({},“S”); var list=
      {items1+items2}
    ;var list=React.DOM.ul({},items1+items2);
    导致语法错误的一个微妙之处是
  • 元素之间没有逗号。正如前面指出的,查看被删除的输出绝对有助于了解发生了什么。这基本上是直截了当的,但并非所有的事情都是显而易见的。可能有助于快速检查!不能将数组与
    +
    连接起来。