【发布时间】:2016-04-15 15:48:06
【问题描述】:
我的目标是在页面/父组件上动态添加组件。
我从一些基本的示例模板开始,如下所示:
main.js:
var App = require('./App.js');
var SampleComponent = require('./SampleComponent.js');
ReactDOM.render(<App/>, document.body);
ReactDOM.render(<SampleComponent name="SomeName"/>, document.getElementById('myId'));
App.js:
var App = React.createClass({
render: function() {
return (
<div>
<h1>App main component! </h1>
<div id="myId">myId div</div>
</div>
);
}
});
SampleComponent.js:
var SampleComponent = React.createClass({
render: function() {
return (
<div>
<h1>Sample Component! </h1>
</div>
);
}
});
这里SampleComponent 挂载到<div id="myId"></div> 节点,该节点是预先写在App.js 模板中的。但是如果我需要向 App 组件添加不定数量的组件怎么办?显然,我不能将所有必需的 div 都放在那里。
在阅读了一些教程之后,我仍然不了解组件是如何动态创建并添加到父组件的。有什么办法?
【问题讨论】:
-
您的两个组件都安装到不同的元素是否有原因? 99% 的 React 应用只调用一次
ReactDOM.render,所有其他组件都是“根”节点的子节点 -
不,我现在明白这不是正确的方法:)
标签: javascript reactjs babeljs