Sto imparando Reactjs. Ho implementato un campione per reagire app con rail. Ho cercato un sacco per trovare la soluzione, ma non ho trovato nessuno. Volevo chiamare un altro componente dalla funzione onClick
. Ma non succede niente. È possibile ciò che cerco di ottenere? Se sì, per favore indicami dove sbaglio e se no, allora in quale modo posso attuare. Qui è il mio codice:Come chiamare un altro componente dalla funzione onClick in ReactJS
var Comment = React.createClass({
render: function() {
return (
<div id={"comment_"+ this.props.id }>
<h4>{ this.props.author } said:</h4>
<p>{ this.props.desc }</p>
<a href='' onClick={this.handleDelete}>Delete</a> | #this is for delete which works great
<a href='' onClick={this.handleEdit}>Edit</a>
# If I put here then it works fine <UpdateComments comments={ this.props} /> but I don't want it here
</div>
)
},
handleDelete: function(event) {
$.ajax({
url: '/comments/'+ this.props.id,
type: "DELETE",
dataType: "json",
success: function (data) {
this.setState({ comments: data });
}.bind(this)
});
},
handleEdit: function(event) {
var Temp = React.createClass({
render: function(event){
return(<div>
<UpdateComments comments={ this.props} /> #here I want to call UpdateComments component
</div>
)
}
});
}
});
Aggiornamento: Se provo qui di seguito trucco allora chiama il componente, ma ricaricare la pagina e di nuovo sparire chiamato componente :(
handleEdit: function() {
React.render(<UpdateComments comments={ this.props} /> , document.getElementById('comment_'+ this.props.id));
}
ogni altro dettaglio, se si richiesto quindi non esitate a chiedere. Grazie in anticipo. :)
Stai lavorando con flusso o riflusso? Attualmente sto lavorando con reflusso e uso il negozio per ottenerlo. – dobleUber
@melaspelas: No, non sto usando il flusso. simple reactjs –
hai provato https://facebook.github.io/react/tips/communicate-between-components.html ?? – dobleUber