向反应元素添加内容

时间:2015-07-02 06:04:27

标签: javascript jquery reactjs

我是react.js的新手,我听说这个js库对任何修改它的组件结构的反应都很糟糕。         是否有任何特定的过程使用Jquery将内容添加到react元素中。例如,如果我们想要将内容添加到react的div字段中,我们是否可以直接使用Jquery append方法向该div插入文本,还是有其他方法来实现这些内容?

2 个答案:

答案 0 :(得分:2)

这个想法是你要么使用传统方法,要么放弃jQuery并使用react,这意味着使用react呈现树,可能构建任务,客户端路由器/ SPA。

您不应该修改响应组件从外部生成的DOM,因为它维护内部状态和虚拟DOM会变得不同步。你要么使用一个生态系统,要么使用它们是两种截然不同的网站编写方式。

答案 1 :(得分:0)

如果你想首先在网站的一小部分上引入反应,我建议用jquery收集你的所有数据,然后将数据传输到反应组件。

粗略

// gather data with jquery or whatever
var data_array = gatherData();

ReactDOM.render(<MyCustomComponent data={data_array}/>, $('#my-react-root')[0])

可以以相同的方式管理运行时期间的渲染更改。只需再次收集数据并相应地更改反应组件的状态。

如果您不想提取数据或html是复杂的,您可以使用dangerouslySetInnerHTML来路径纯文本html字符串。

来自文档:

<div dangerouslySetInnerHTML={{__html: getMarkup()}} />
祝你好运 安德烈亚斯