我是react.js的新手,我听说这个js库对任何修改它的组件结构的反应都很糟糕。 是否有任何特定的过程使用Jquery将内容添加到react元素中。例如,如果我们想要将内容添加到react的div字段中,我们是否可以直接使用Jquery append方法向该div插入文本,还是有其他方法来实现这些内容?
答案 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()}} />
祝你好运
安德烈亚斯