Verileri (asenkronize olmayan) RefluxJS ile başlatmanın uygun yolu nedir? AngularJS'nin çözümlerine benzer bir şey var mı, yoksa Flux uygulamasının bununla bir ilgisi yok mu (Yönlendirici bu sorumluluğu ele almalıydı)?Verileri başlatmanın doğru yolu
cevap
Uygulamanızın üst düzey bileşeninde, verileri getiren bir eylemi tetiklemek için comoponentWillMount
yöntemini (docs) kullanın. Bileşen başlangıçta oluşturulduğunda bu yöntem çağrılır. Örneğin
:
// Create an async action, that will request data using a promise
// Using the recently released (v0.2.2) helpers for async actions
var actions = Reflux.createActions({
init: {asyncResult: true}
});
actions.init.listenAndPromise(promiseToGetData);
// Update the store when the init action's promise is completed
var store = Reflux.createStore({
listenables: actions,
onInitCompleted: function (data) {
// do stuff
this.trigger(data)
}
});
var App = React.createClass({
mixins: [Reflux.connect(store)],
componentWillMount: function() {
// When this component is loaded, fetch initial data
actions.init()
}
});
Reflü bu aslında bir API vardır.
docs nitelendirerek kötü, ama Spoike (reflü yazarı) bir kod örneği ile birlikte bir cevap verdi:
Bu soru, verileri eşzamansız olarak almakla ilgiliydi. Reflux, React bileşenlerinde deponun 'getInitialState' yöntemini ayarlar ve verileri eşzamansız olarak almak için kullanılmamalıdır. Bağlandığınız yanıttaki örnek statik değerler içindir. Bir örnek için resmi React [document] (https://facebook.github.io/react/tips/initial-ajax.html) adresine bakın ve http://stackoverflow.com/questions/26615307 –
- 1. Mongodb'i başlatmanın ve ifade etmenin doğru yolu?
- 2. couchbase'de verileri ayırmanın doğru yolu nedir
- 3. Android emülatörünü başlatmanın en hızlı yolu
- 4. Heroku'da postgres'i yeniden başlatmanın herhangi bir yolu var mı?
- 5. Homebrew kullanılarak kurulan PostgreSQL otomatik başlatmanın uygun yolu nedir? sonunda
- 6. Bildirimde bir arabelleği bir diziyle başlatmanın bir yolu var mı?
- 7. Uygulama başladıktan sonra fasulyeleri Bahar bağlamında başlatmanın en iyi yolu?
- 8. YouTube.Builder'i kullanmanın doğru yolu,
- 9. Java NIO kanal verileri doğru
- 10. Doğru yolu Solr
- 11. Formları oluşturmanın doğru yolu
- 12. Doğru yolu eski günlerde
- 13. Dijkstra doğru yolu bulamıyor
- 14. doğru yolu bir form
- 15. C# listelerindeki sözlükleri başlatmanın acısını nasıl azaltabilirim?
- 16. Oturumlarınızı php olarak ayarlamanın doğru yolu nedir?
- 17. Güncelleniyor HTML verileri doğru öznitelik ancak sayfa
- 18. Lider panosu doğru verileri nasıl alabilirim?
- 19. XMLHTTP Veri özetinde excel - doğru verileri ayıklayamıyor
- 20. Çekirdek Verileri doğru veriyi dönmüyor bazen
- 21. MySQL için doğru verileri döndürmez <= operatörü
- 22. Rails'de saymanın doğru yolu nedir?
- 23. Kılavuz çizgilerini çizmenin doğru yolu
- 24. Uzun değerleri çarpmanın doğru yolu
- 25. PushSharp'ı kullanmanın doğru yolu nedir?
- 26. Mücevherleri yayınlamanın doğru yolu nedir?
- 27. Android'de SlidingDrawer uygulamasının doğru yolu
- 28. SqlDataReader'da sayfalama uygulamasının doğru yolu!
- 29. Qt programından çıkmanın doğru yolu?
- 30. Akka'daki iletileri ertelemenin doğru yolu
Sadece bir soru: Ben tepki-yönlendirici ile refluxjs kullanıyorum verirsem, söz reddedildiyse olur; Montaj durduruldu mu (teknik olarak, hiçbir şey olmuyor) veya elle mi kullanılıyor? – srph
Bileşen hala takılacak, eylem çağrısı ateş ve unutuyor. Söz, reddedilirse, mağaza sonucu almaya devam eder ve bir 'onInitFailed' işleyicisi ekleyebilirsiniz. Eşzamansız eylemler hakkında daha fazla bilgi için https://github.com/spoike/refluxjs#asynchronousactions sayfasına bakın. –
Teşekkürler. Bu arada, '' 'onComponentWillMount''' yerine' '' componentWillMount''' için başvuruyor musunuz? – srph