Javascript React不为Ajax调用加载数据

Javascript React不为Ajax调用加载数据,javascript,ajax,reactjs,components,Javascript,Ajax,Reactjs,Components,我已经构建了一个React组件,我想在组件加载时将数据放入其中,但我总是将数组设置为空。据我所知,如果我必须将数据放入组件中,我应该在ComponentDidMount方法中这样做 下面是我的代码 var Home = React.createClass({ componentDidMount(){ console.log('component mount'); var self = this; var str = "junk string"; $.aj

我已经构建了一个React组件,我想在组件加载时将数据放入其中,但我总是将数组设置为空。据我所知,如果我必须将数据放入组件中,我应该在ComponentDidMount方法中这样做

下面是我的代码

var Home = React.createClass({

    componentDidMount(){
    console.log('component mount');
    var self = this;
    var str = "junk string";
    $.ajax({
      url: "http://localhost:9000/checkoutcart/data/",
      type : "get",
      data : {
        ajaxid: 4, 
        UserID: str
        },
    }).then(function (data) {    
      self.setState({movieItem: data});
    });
},

getInitialState: function() {   
    console.log('getInitialState component mount');
    return {movieItem:[]};
  },

  render: function() {
      return (
        <div>          

        <div>               
        <div>
        <ol>
            {this.state.movieItem.map(stuff => (
              <li><h4>{stuff.title}</h4></li>
            ))}
          </ol>
        </div>
        </div>


        </div>
      );
    }
});
var Home=React.createClass({
componentDidMount(){
console.log(“组件安装”);
var self=这个;
var str=“垃圾字符串”;
$.ajax({
url:“http://localhost:9000/checkoutcart/data/",
键入:“获取”,
数据:{
阿贾西德:4,
用户ID:str
},
}).then(函数(数据){
self.setState({movieItem:data});
});
},
getInitialState:函数(){
log('getInitialState组件装载');
返回{movieItem:[]};
},
render:function(){
返回(
{this.state.movieItem.map(stuff=>(
  • {stuff.title}
  • ))} ); } });
    您是否检查了API响应?尝试在不使用
    var self=this的情况下执行此操作我只是想知道你为什么使用这个版本的React?@Liam:我不确定你的评论??我只是想试试。@Geek你解决了吗?