如何在ReactJS中输出文本而不将其包装在span中

Tva*_*roh 43 javascript reactjs

在我的基于ReactJS的应用程序中,我做了:

var _ = React.DOM;
_.span(null, 'some text', _.select(null, ...));
Run Code Online (Sandbox Code Playgroud)

问题是:'some text'包含在DOM中的其他span元素中.有没有办法避免这种行为,只输出原始文本?

要明确:我想输出

<span>some text<select>...</select></span>
Run Code Online (Sandbox Code Playgroud)

<span><span>some text</span><select>...</select></span>
Run Code Online (Sandbox Code Playgroud)

Sop*_*ert 40

更新:这在React v15(2016-04-06)中现已"修复" - 现在每个文本周围都添加了注释节点,但它不再包含在<span>标签中.

我们在此版本中收到了社区的一些惊人贡献,我们想特别强调Michael Wiencek 提出拉动请求.感谢Michael的工作,React 15不再在文本周围发出额外的节点,使DOM输出更加清晰.对于React用户来说,这是一个长期的烦恼,所以接受这个作为外部贡献是令人兴奋的.<span>

完整发行说明.


这是目前React的技术限制; 它包装了一个span中的任何浮动文本节点,以便它可以为它分配一个ID并在以后再引用它.在React的未来版本中,希望我们可以删除此限制.

  • 另见[#1236](https://github.com/facebook/react/issues/1236),这是一个相关问题. (2认同)
  • @Kokodoko然后明确地在它们周围添加一个范围. (2认同)