Sayfa yüklemesinde bir emberjs uygulamasının verilerini önyüklemenin en iyi yolu nedir. En büyük ihtimalle veriyi gizli bir div içindeki veri-nitelik veya veriden elde edeceğini biliyorum, fakat bu uygulamada emberjs uygulama yaşam döngüsü nereye gider?ember.js içinde önyükleme verileri
cevap
Yükleyebileceğiniz birkaç farklı veri türü vardır. Dinamik veri için ((statik veriler için) DS.FixtureAdapter
birlikte ember-data
modeller kullanılarak veya DS.RESTAdapter
edilmiştir
Bu armatürleri kullanılarak küçük bir örneğidir:. Benim (ufacık) uygulamalarda
App.Store = DS.Store.extend({
revision: 11,
adapter: 'DS.FixtureAdapter'
});
App.Page = DS.Model.extend({
title: DS.attr('string')
});
App.Page.FIXTURES = [{
id: 1,
title: "Test Title #1"
}, {
id: 2,
title: "Random Title #2"
}];
Sadece değilim mağaza ve modelleri tanımladıktan sonra fikstür verilerini doğrudan yükler.Bu, basit bire bir ilişkilendirmeler için iyi çalışır (türlerin veya kategorilerin statik listelerini düşünün) .Açıksız tipte verileri kullanırken, yalnızca rotada model
özniteliği olarak belirtilir, ve gerektiğinde yüklenir.Güncelleştirme
İlk verileri önceden yüklemek için (ör. Sayfa yüklendiğinde loggedin gibi ilk sayfa durum) Eğer DS.Store#load
kullanabilirsiniz:
Store = DS.Store.create({
revision: 11
});
Page = DS.Model.extend({
title: DS.attr('string')
});
Store.load(Page, {id: 1, title: 'Wow Cool Title'});
Store.find(Page, 1).get('title') //=> 'Wow Cool Title'
RESTAdapter kullanıyorum. Almaya çalıştığım şey, her şeyi ilk başta oluşturduğumda, sayfada sahip olduğum verileri nasıl yükleyeceğim. Örneğin, güncel bir kullanıcım var, takip etmek istiyorum ve mevcut kullanıcıyı sayfa yüküne önyükleme yapmak istiyorum (kullanıcının sayfayı kapattığını ve daha sonra geri döneceğini söyleyin). – spullen
Bence işe yarayacak. Store.load dizileri alıp almadığını biliyor musunuz? Değil varsayalım ki sadece gömülü veri üzerinde döngü yapabilir ve her biri için bir Mağaza yükü yapabilirim. – spullen
Evet, "DS.Store.loadMany" ile bir seferde birden çok kayıt yükleyebilirsiniz ([burada] [https://github.com/emberjs/data/blob/master/packages/ember-data adresine bakın. /lib/system/store.js#L1616) ve birkaç test [burada] (https://github.com/emberjs/data/blob/master/packages/ember-data/tests/unit/store_test.js#L211). –
- 1. Metamorphs Messing Up CSS içinde Ember.js Görünümler
- 2. ember.js
- 3. ember.js
- 4. Ember.js
- 5. ember.js
- 6. Ana yol modeline Ember.js içinde erişme
- 7. belongsTo kaynağından kayıt bulma Ember.js içinde ilişkilendirme
- 8. Ember.js içinde özellik değişikliğini el ile tetikleme
- 9. Alt klasörlerin içinde Ember.js modellerini organize etmek?
- 10. AngularJS - Sayfadaki bir hizmete önyükleme verileri yükleme
- 11. Rota değişikliği hakkındaki Redux-saga önyükleme verileri
- 12. İstek üzerine Sails.js'de Ember.js
- 13. Ember.JS && Coffeescript
- 14. ember.js widgets
- 15. Ember.js {{action}} tıklaması dışında,
- 16. ember.js dinamik bileşenleri
- 17. Google harita, önyükleme modunun içinde gösterilmiyor
- 18. Önyükleme tarihi belirleyiciyi thymeleaf sayfasının içinde biçimlendirme
- 19. Webpack içinde önyükleme için jQuery'yi belirtin
- 20. Önyükleme satırını Bootstrap içinde hizala 3
- 21. Açısal 2 Bileşen, önyükleme önyükleyicisi içinde
- 22. Nesneleri yok sayma Ember.js
- 23. Ember.js - Ember.lookup'un amacı,
- 24. Ember.js nerede this._super()
- 25. Ember.js desteklediği etkinlik nedir?
- 26. Ember.js Dinamik Model Özellikleri
- 27. Ember.js: Bileşen özniteliği
- 28. Twitter ile Ember.js Bootstrap Modal
- 29. Önyükleme Aralığı: Önyükleme aralığı aralığı nasıl eklenir?
- 30. Önyükleme olmadan önyükleme alt menüleri
Eğer "kullanıcı geri geliyor" açıklayabilir bölümü derinlemesine biraz daha? Yani -sadece yerel depolama veya çerezleri veya tarayıcıda başka bir şey ($ içeriğe) göstermek için $ .ajax şeyleri gerçekleşmeden önce kullanıyor musunuz? –
"Kullanıcı geri geliyor" bir oturum olduğunu ima eder. Öyleyse, ember uygulamasının önyükleme yapmak için kullanacağı html'ye (yalnızca kullanıcıyla değil, diğer bilgilerle birlikte) html yerleştirilmiş bazı jsonlar olurdu. Anlamaya çalışıyorum, html'den verileri alıp kullanmak için sanal uygulama yaşam döngüsündeki en iyi yer. – spullen