JSX代碼:陣營renderComponent更換DOM
var App = React.createClass({
render: function() {
return <div className="darken">hello world</div>
}
});
React.renderComponent(<App/>, document.querySelector('.main'))
HTML:
<body>
<header>welcome</header>
<div class="main"></div>
</body>
React.renderComponent
將追加呈現JSX到<div class="main">
。 HTML的輸出將是:
<body>
<header>welcome</header>
<div class="main">
<div class="darken">hello world</div>
</div>
</body>
是否有可能React.renderComponent
取代<div class="main">
,所以我希望是這樣的:
<body>
<header>welcome</header>
<div class="darken">hello world</div>
</body>
感謝您的答覆。我以前沒有這樣想過。但現在我有一些情況,我有更新的問題(看看HTML代碼)..你能解決我的問題嗎? – user3741665
我很確定React只能渲染容器中的頂層組件,它們不能替換現有的元素。當然,您可以在渲染React組件之前手動刪除舊元素。 – AlexG
但是這是不可能的,如果你在渲染React組件之前刪除舊元素,你會得到這樣的錯誤:「目標容器不是DOM元素」。 – p1nox