2016-04-12 12 views
1

ReactJS'de birden çok ajax araması göndermek istiyorum ve kodun sırayla yürütüldüğünü merak ediyorum. İkinci ajax çağrısı sadece ilk ReactJS bileşeni oluşturulduktan sonra gönderilecek mi?ReactJS'de aynı anda birden fazla ajax (ve asenkronize sonuçları elde etme) nasıl aranır?

var firstAJAX = React.createClass({ 
    componentWillMount: function() { 
    this.state = {list: []}; 
    }, 
    componentDidMount: function() { 
    $.ajax({ 
     url: '/someurl', 
     dataType: 'json', 
     cache: false, 
     type: 'GET', 
     success: function(data) { 
     this.setState({list: data}); 
     }.bind(this), 
     error: function(xhr, status, err) { 
     console.error('url', status, err.toString()); 
     }.bind(this) 
    }) 
    }, 
    render: function() { 
    return (
     <div> 
      {something} 
     </div> 
    ) 
    } 
}) 
ReactDOM.render(<firstAJAX />, 
    document.getElementById('div') 
); 

var secondAJAX = React.createClass({ 
    //similar code with different url from firstAJAX 
}); 

Birden çok belge elemanını ajax'tan alınan sonuçlarla ele almak istiyorum. göndermek nasıl yapılır 1 ajax-> Render-> göndermek 1 ajax-> işlemek -> ...birden ajaxs göndermek haline -> işlemek -> işlemek ...

cevap

0

istediğiniz gibi alt öğelerin davranışını tanımlayabilirsiniz, 2 ajax çağrısı render ilkinden sonra olur.

ReactDOM.render(<secondAJAX />, 
    document.getElementById('div') 
); 

Bunu soruyla gerçekleştirmek umuyoruz bilmiyorum, ama muhtemelen bu şekilde şeyler yapıyor olmak istemiyoruz.

+0

İlk ajax'den önce 2. ajax nasıl yollanır? – Pao

0

Ben senin yolu olduğunu düşünüyorum container components modelini kullanın. Bu durumda kap içinde firstAJAX & secondAJAX için iki istek çalıştırın ve size var secondAJAX = ... ilanı sonrasında aşağıdaki kodu ekleyin varsayarsak

İlgili konular