Ream-native ile Realm veritabanlarını kullanmakta yeniyim ve dokümantasyon/api genel olarak şeylerin yeterince açık görünmesini sağlar (btw için çok takdir edilir), api içinde hiçbir yerde değişiklik yapmaya çalıştığım zaman göremiyorum Realm'de bir db tablosu oluşturma, güncelleme, silme Başarıyı veya başarısızlığı izlemek için bir yöntem ekleyebilirim ve ayni yanıtı. Orası var mı ve sadece görmüyorum ya da bunun bir argüman olarak bir geri bildirimi eklemekten ayrı olarak ele almamın bir yolu var mı?Bir Bölge'nin başarıyla güncellendiğini nasıl anlarım?
1
A
cevap
3
Realm'deki hatalar, istisnaların atılmasına neden olur, böylece try/catch bloklarını kullanarak hataları işleyebilirsiniz. Realm.create
ve Realm.delete
yalnızca kodunuzda bir mantık hatası varsa atmalıdır. Db diske yazmaya çalışırken bir hata varsa Realm.write
atabilir.
function writeWithError(realm, writeCallback, errorCallback) {
try {
realm.write(writeCallback);
errorCallback(undefined);
}
catch(e) {
errorCallback(e);
}
}
örnek hata geri arama çağırır: Bunun yerine her yazmak için bir deneme/yakalama bloğu yazmak zorunda kalmadan daha başarı/hata için bir geri arama geçebileceği şekilde
Kolayca kendi sarıcı yaratabilecek Başarı durumunda undefined
ile veya bir hata atılmışsa hatayla. Bunu Realm
nesnesine eklemek için Object.defineProperty
kullanmayı deneyebilirsiniz, böylece üye işlevi olarak çağırabilirsiniz.
İlgili konular
- 1. Değişkenin farklı bir sınıfta güncellendiğini nasıl kontrol edilir?
- 2. Bir Bölgenin eyleminden "kök" alanındaki bir eyleme yönlendirin mi?
- 3. nasıl div etiketi bölgenin köşelerini yuvarlamak için tek CSS kullanılır?
- 4. Sütunlamanın bittiğini nasıl anlarım?
- 5. "(.). (.)" Yi nasıl anlarım?
- 6. Kontrol başarıyla
- 7. PouchDB başarıyla
- 8. Bir kaydı neden #destroy() yapamadığımı nasıl anlarım?
- 9. Kullanıcının bir düğmeye basıp tıklamadığını nasıl anlarım?
- 10. Bir yazarın kapatılıp kapatılmadığını nasıl anlarım?
- 11. Bağlantının ölçülüp ölçülmediğini nasıl anlarım?
- 12. Django QuerySet'in değerlendirildiğini nasıl anlarım?
- 13. İki poligonun kesiştiğini nasıl anlarım?
- 14. IPython'un çalışıp çalışmadığını nasıl anlarım?
- 15. Bu Grid.Clip dönüşümü nasıl anlarım?
- 16. Saatleri nelerin kaydedildiğini nasıl anlarım?
- 17. Building grails projeyi başarıyla kapsayıcı denetimi başarıyla geçiyorsa
- 18. başarıyla Mono 2.10.8
- 19. Emacs'e git dalımın nasıl değiştiğini nasıl anlarım?
- 20. NHibernate: başarıyla yükleyemiyor yüklüyor
- 21. vimscript nasıl olur! Xv @i başarıyla
- 22. Mysql saklı yordamının başarıyla yürütüldüğü nasıl söylenir
- 23. Bir işlemin bir grafik arayüzü olup olmadığını nasıl anlarım?
- 24. Ruby'de, bir dizenin bir dizide olup olmadığını nasıl anlarım?
- 25. Bir TClass'ın bir diğerinden türetilmiş olduğunu nasıl anlarım?
- 26. Bir dosyanın bir svn-repo'da var olup olmadığını nasıl anlarım?
- 27. Pandalar veri kümesindeki bir sütunun veri türü olup olmadığını nasıl anlarım? Bir sütunun sayısal olup olmadığını nasıl anlarım?
- 28. Bir arangoDB foxx uygulaması başarıyla çalıştırılamıyor
- 29. FTP başarıyla benim FTP bağladığınız
- 30. Kim, git-flow'i başarıyla kullanıyor?
Cevabınız için teşekkür ederiz. Ancak, yakalanan hiçbir hata/istisnanın gerçekten iyi bir başarı göstergesi olmadığını düşünüyorum. Ayrıca, ilk sorumu sorduğum şey "başarıyı ya da başarısızlığı izlemeyi ve ayni cevap vermeyi" başarmaktı. Ben de "ayni cevap ver" e biraz vurgu yapmak istiyorum. Geri arama işlevi veya geri arama işlevine benzer bir şey eklemenin herhangi bir yolu var mı? – flyingace
Yanıtımı, hata geri bildirimlerini desteklemek için nasıl yazacağınız ile ilgili bir örnekle değiştirdim. – Ari
Cevabınızı takdir ediyorum ve sadece bu konuya daha fazla değineceğim çünkü başka birtakım Realm sorularına cevap vermişsiniz gibi görünüyor ve muhtemelen Realm için çalıştığınızı düşünüyorum. Eğer yanılıyorsam, lütfen benim şaşkınlığımı affedin. Ek try/catch ifadesiyle karşılaştığım ana konu, "writeCallback" ifadesini realm.write için bir argüman olarak içermesidir, ancak realm.write zaten şu özelliğe göre bir işlev çağrısını beklemektedir: realm.write (() => { realm.create ('Araba', {make: 'Honda', model: 'Anlaşma', sürücü: 'awd'}); }); – flyingace