ReactJs:是否可以通过类名呈现DOM到文档?
ReactJs: Is it possible to render DOM to document by class name?
我正在学习ReactJs,真的很喜欢它。我想问一下,我们是否可以通过类名渲染虚拟DOM到文档。
React.render(
<CommentBox url="data/comments.json" pollInterval={2000} />,
document.getElementById('class')
);
我试图通过
getElementByClassName(类)
作为react的render方法的第二个参数,它不起作用。是否React只渲染DOM与ID的节点,还是有一个解决方案,使用类的节点?
看来你用错了方法。
也许你应该用getElementsByClassName
而不是getElementByClassName
。不要忘记getElementsByClassName
返回一个类似数组的obj HTMLCollection,所以选择第一个元素是必要的。
React.render(
<CommentBox url="data/comments.json" pollInterval={2000} />,
document.getElementsByClassName('className')[0]
);
更多信息,请查看文档
要回答上面答案中Sam的问题,正如@xcatliu指出的,getElementsByClassName
返回一个类似数组的HTML元素列表,因此您可以使用for循环来迭代它。
这样,相同的React组件将被呈现为具有相同class属性的每个HTML元素的子元素。
像下图:
class Component extends React.Component {
constructor(props) {
super(props)
}
render() {
return (
<p>Hello</p>
)
}
}
for (let i = 0; i < document.getElementsByClassName("container").length; i++) {
ReactDOM.render(<Component />, document.getElementsByClassName("container")[i]);
}
相关文章:
- 如何判断何时将dom节点添加到文档中
- 为什么是文档.旧版应用程序中的DOM-object.properties为null
- 始终是在DOM就绪后执行的文档底部编写的代码
- firefox扩展可以修改HTML文档的DOM,然后保存为HTML
- 如何在 Javascript 中获取格式良好的 DOM 文档 XML
- 尝试从 dom 文档中删除 dom 节点时出错
- 在jQuery的XML文档中选择和操作DOM中的元素
- XML解析器/从XML节点列表创建一个XML DOM文档
- WWAHost 不加载 XML DOM 文档 6.0
- 在Google Apps Script中获取javascript“文档HTML DOM”信息
- d3.js 在就绪文档上访问 DOM
- 如何在 JavaScript 中使用 DOM 操作函数将
- HTML DOM 从哪里开始?窗?公文?文档默认视图
- 是否存在清除从文档中删除的DOM子树的方法(至少可以阻止加载该子树中的图像)
- 动态修改DOM并添加到文档中
- 从字符串创建一个 DOM 文档,不带 JQuery
- 如何将body元素添加到空DOM文档中?
- 为什么通过Javascript访问DOM文档比Java更快?
- 没有jQuery的AngularJS DOM /文档选择
- 如何在Javascript中获得URL的DOM(文档)?