У меня есть этот следующий кодКак загрузить другой компонент внутри функции OnChange в ReactJS
var SelectOption = React.createClass({
getInitialState: function() {
return {
data: []
};
},
handleemployeeChange: function() {
alert('sssss');
},
loadOptionfromServer: function() {
$.ajax({
url: this.props.url,
dataType: 'json',
cache: false,
success: function(data) {
this.setState({
data: data
});
console.log(data);
}.bind(this),
error: function(xhr, status, err) {
console.error(this.props.url, status, err.toString());
}.bind(this)
});
},
componentDidMount: function() {
alert('sssss');
this.loadOptionfromServer();
//setInterval(this.loadCommentsFromServer, this.props.pollInterval);
},
render: function() {
return (< SelectOptionList data = {
this.state.data
}
/>
);
}
});
var SelectOptionList = React.createClass({
render: function() {
var commentNodes = this.props.data.map(function(list) {
return (< Addcontenttoselect id = {
list.emp_ide_id
}
option = {
list.emp_name
} >
< /Addcontenttoselect>
);
});
return (< select id = "select1"
className = "form-control"
data - placeholder = "Basic Select2 Box"
onChange = {
this.handleemployeeChange
} > {
commentNodes
} < /select>
);
}
});
var Addcontenttoselect = React.createClass({
render: function() {
return (< option value = "{this.props.id}" > {
this.props.option
} < /option>);
}
});
ReactDOM.render(< div className = "col-md-3" > <h3> Select Employee to Review < /h3><SelectOption url="/appraisal/employeelist " pollInterval={70000} /></div>, document.getElementById('select-box'));
Так что этот компонент создает Select Tag в браузере, я хочу взять значение выбранного параметра и вызов других компонент, который создает таблицу из данных, полученных от API
Любые провода, пожалуйста, дайте мне знать
Благодаря
У меня есть компонент под названием '< loadUserAppraisal url = "something" empid = "IMP132"> 'Я хотел отобразить этот компонент, когда я выберу один из ID из выпадающего списка. Так можете ли вы сказать мне, где поддразнивать код, чтобы сделать это? – Vikram
Я тонкий, вероятно, внутри функции OnChange? – Vikram
отредактировал мой ответ, смена не будет работать, потому что она не включена в окончательный рендер. вы можете выполнить выборку данных в функции «Изменить», а затем установить состояние с новыми значениями. После этого функция renderResult позаботится. если вы делаете это таким образом, вам не нужно передавать URL и идентификатор в качестве реквизита, а не извлекаемые данные. – hyde