JSX:React renderComponent zastąpić 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
dołączy renderowane JSX do <div class="main">
. Wyjście HTML będą:
<body>
<header>welcome</header>
<div class="main">
<div class="darken">hello world</div>
</div>
</body>
Czy możliwe React.renderComponent
zastąpić <div class="main">
, więc czego się spodziewać tak:
<body>
<header>welcome</header>
<div class="darken">hello world</div>
</body>
dzięki za odpowiedź. Nie myślałem tak wcześniej. Ale teraz mam kilka sytuacji i mam pytanie o aktualizację (spójrz na kod HTML). Czy możesz rozwiązać mój problem? – user3741665
Jestem prawie pewien, że React może renderować tylko najlepsze komponenty wewnątrz kontenerów, nie może zastąpić istniejących elementów. Oczywiście możesz po prostu usunąć stary element ręcznie przed renderowaniem komponentu React. – AlexG
Ale to nie jest możliwe, jeśli usuniesz stary element przed renderowaniem komponentu React, pojawi się błąd: "Docelowy kontener nie jest elementem DOM.". – p1nox