gpt4 book ai didi

select - 使用 React js 用 datajson 填充 select

转载 作者:行者123 更新时间:2023-12-03 14:21:08 24 4
gpt4 key购买 nike

我正在尝试使用React js填充选择,我正在使用react js文档(https://facebook.github.io/react/tips/initial-ajax.html)上给出的示例,它使用jquery来管理ajax调用,我无法做到这一点工作,到目前为止我有这个:

这里是代码笔:http://codepen.io/parlop/pen/jrXOWB

    //json file called from source : [{"companycase_id":"CTSPROD","name":"CTS-Production"},{"companyc  ase_id":"CTSTESTING","name":"CTS-Testing"}]
//using jquery to make a ajax call
var App = React.createClass({
getInitialState: function() {
return {
opts:[]
};
},

componentDidMount: function() {
var source="https://api.myjson.com/bins/3dbn8";
this.serverRequest = $.get(source, function (result) {
var arrTen = result[''];
for (var k = 0; k < ten.length; k++) {
arrTen.push(<option key={opts[k]} value={ten[k].companycase_id}> {ten[k].name} </option>);
}

}.bind(this));
},

componentWillUnmount: function() {
this.serverRequest.abort();
},

render: function() {
return (
<div>
<select id='select1'>
{this.state.opts}
</select>
</div>
);
}
});

ReactDOM.render(
<App />,
document.getElementById('root')
);

html

<div id="root"></div>

知道如何让它发挥作用,谢谢。

最佳答案

您需要调用 setState 来实际更新您的 View 。这是一个可行的版本。

//json file called from source : [{"companycase_id":"CTSPROD","name":"CTS-Production"},{"companyc  ase_id":"CTSTESTING","name":"CTS-Testing"}]
//using jquery to make a ajax call
var App = React.createClass({
getInitialState: function() {
return {
opts:[]
};
},

componentDidMount: function() {
var source="https://api.myjson.com/bins/3dbn8";
this.serverRequest = $.get(source, function (result) {
var arrTen = [];
for (var k = 0; k < result.length; k++) {
arrTen.push(<option key={result[k].companycase_id} value={result[k].companycase_id}> {result[k].name} </option>);
}
this.setState({
opts: arrTen
});
}.bind(this));
},

componentWillUnmount: function() {
this.serverRequest.abort();
},

render: function() {
return (
<div>
<select id='select1'>
{this.state.opts}
</select>
</div>
);
}
});

ReactDOM.render(
<App />,
document.getElementById('root')
);

关于select - 使用 React js 用 datajson 填充 select,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40166268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com