Nie jestem pewien, czy jest to najlepszy sposób robienia rzeczy, ale chcę przekazać jedną zmienną nazwy klasy do innego komponentu w reakcji.Jak przekazać zmienną stateName do innego komponentu w reakcji
To jest przycisk, który uruchamia animację onClick po prostu dodaje jeden className do kilku elementów tego. Również utworzyłem var = overlay this.state.cliked? "open": ", aby uruchomić nakładkę, jeśli mam nakładkę HTML na tym samym komponencie, działa dobrze, ale muszę zrobić małe elementy, jak mogę.
var React = require('react');
var OverlayView = require('./OverlayView.jsx');
var StatusBarButtonView = React.createClass({
getInitialState: function() {
return {cliked: false};
},
handleClick: function(event) {
this.setState({cliked: !this.state.cliked});
},
render: function() {
var fondo = this.state.cliked ? 'active' : '';
var overlay = this.state.cliked ? 'open' : '';
return (
<div>
<div className={"statusbar-button-container " + (fondo)} onClick={this.handleClick}>
<img src="images/navbar-element-icon-cross.png" className={"rotate " + (fondo)}/>
</div>
</div>
<OverlayView className={overlay} />
);
}
});
module.exports = StatusBarButtonView;
Jak widać jest składnikiem nakładki Chcę przekazać do tego składnika, ale nie jestem pewien, czy to może być po prostu sam i zostanie uruchomiony, gdy ten uchwyt kliknięcie. jestem trochę zagubiony z reakcją, nie tyle informacji online i jestem nowy z tym.
Jest to komponent Overlay:
var React = require('react');
var OverlayView = React.createClass({
return (
<div className={"overlay overlay-slidedown " + this.props.class}>
<nav>
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Work</a></li>
<li><a href="#">Clients</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
</div>
);
}
});
module.exports = OverlayView;
Im nie wiesz jak to zrobić, im szuka przykładów całym internecie, ale nic bardzo jasne dla mnie :(
Dzięki, problem polega na tym, że nie rozumiem przykładu classSet reagowania samouczka, ponieważ wygląda on na niekompletny, widzę klasy, ale nie widzę, w jaki sposób klasy są stosowane. Potrzebuję działającego przykładu lub czegoś bardziej zrozumiałego, żeby to zrozumieć.Czy możesz dać przykład? – Fraccier
Zaktualizowałem moją odpowiedź, aby dołączyć przykład. – subeeshb
Masz rację, w tej chwili zrobiłem classSet (classnames), aby przełączyć klasę i działa dobrze. Teraz muszę spróbować przekazać stanową podpórkę do nakładki. – Fraccier