SORU
29 Mayıs 2013, ÇARŞAMBA


Bir AngularJS uygulama geliştirme modülleri dinamik set

Ben bir uygulama ile karmaşık bir düzen nereye kullanıcı-ebil koymak (sürükle/bırak) widget (seçerek gelen önceden tanımlanmış bir dizi 100 widget) her parçacık özel bir uygulama bu görüntüler bir dizi veri (getirilen kullanarak DİNLENME arama) belirli bir şekilde. Blog yazıları, stackoverflow soru ve AngularJS resmi belgeleri okudum ama nasıl uygulama işlemek için, tasarım gereksinimleri gerektiğini çözemedim bir türlü. Demo apps bakarak, bunu oluştururken tek bir modül (ng-app) var .js bağımlı modül bağımlılıkları, ancak widget büyük bir set olarak bildirilen dosya ve bir şekilde onları tanımlamak için tavsiye edilmez. Aşağıdaki sorular için suggession ihtiyacım var:

  • Nasıl uygulaması ve widget - AngularJS ayrı bir modül var mı, her widget ana modül için bir yönerge olmalıdır dizayn etmeliyim?
  • Ben direktifleri olarak benim widget tasarım varsa, orada bir yönerge içinde bağımlılık tanımlamak için bir yoldur. I. e. talimatımı kullanan söylemek ng-takvim uygulanması.
  • Ben ayrı bir modül olarak her widget tasarımı, dinamik ana modül için bir bağımlılık widget modülü eklemek için bir yolu var mı?
  • Nasıl denetleyicileri - widget başına bir denetleyici muhtemelen tasarım gerekir?
  • Nasıl olursa görünümünde aynı tip birden çok widget varsa durumu (kapsam) ayırmak gerekir?
  • AngularJS ile yeniden kullanılabilir Aletler tasarlamak için bestpractices var mı?

EDİT

Yararlı kaynaklar:

CEVAP
29 Mayıs 2013, ÇARŞAMBA


Bu sadece genel öneriler.

Nasıl uygulaması ve widget - AngularJS ayrı bir modül var mı, her widget ana modül için bir yönerge olmalıdır dizayn etmeliyim?

Widget hundres konuşuyorsun, doğal çeşitli modüller içine bölünmüş gibi görünüyor. Bazı Aletler daha diğer aletler daha yaygın olabilir. Bazı çok genel olması ve diğer projelere uygun olabilir, diğerleri daha özeldir.

Ben direktifleri olarak benim widget tasarım varsa, orada bir yönerge içinde bağımlılık tanımlamak için bir yoldur. I. e. talimatımı kullanan söylemek ng-takvim uygulanması.

Bağımlılıklar için diğer modülleri hazır bir modül düzeyi, ama bir sorun yok eğer modülü A bağlı modülü B ve de A B bağlı modül C. Direktifleri Açısal olarak widget oluşturmak için doğal bir seçimdir. Eğer bir yönerge bir Direktif bağlıdır eğer sen de aynı modül içinde onları tanımlamak, ya da modüler bir düzeyde bağımlılık yaratır.

Ben ayrı bir modül olarak her widget tasarımı, dinamik ana modül için bir bağımlılık widget modülü eklemek için bir yolu var mı?

Bunu yapmak için neden isteyeyim emin değilim, ve ben bunu nasıl emin değilim. Direktifleri ve hizmetleri Açısal kullanılan önce başlatıldı. Eğer büyük bir kütüphane yönergesi (widget) ve biliyoruz ki, sen muhtemelen kullanmak bazıları, ama hepsini değil - ama bilmiyorsun hangileri olur kullanıldığında, uygulama alır başlatılmış olabilir aslında "tembel yükleme" talimatlarından sonra module has been yüklendi. 16* *bir örnek oluşturdum

Yararı ihtiyacınız önce komut dosyaları yüklemek zorunda değilsiniz, çünkü Uygulama Eğer çok fazla kod varsa daha hızlı yüklemek için alabilirsiniz. Dezavantajı oldukça büyük bir gecikme yeni bir Direktif yüklenir ilk kez olabilir.

Nasıl denetleyicileri - widget başına bir denetleyici muhtemelen tasarım gerekir?

Bir widget muhtemelen kendi denetleyicisi gerekir. Denetleyicileri genellikle daha iyi bir hizmet uyabilecek herhangi bir işlevi varsa orada düşünebilirsiniz büyük olsun küçük olmalıdır.

Nasıl olursa görünümünde aynı tip birden çok widget varsa durumu (kapsam) ayırmak gerekir?

Kapsam değişkenleri gereken Aletler olmadan şüphe kendi izole kapsamları (scope:{ ... } Yönerge yapılandırma) olmalıdır.

AngularJS ile yeniden kullanılabilir Aletler tasarlamak için bestpractices var mı?

Kapsam izole, gerekli minimum bağımlılıkları devam*.17*

Brian Ford da writing a huge application in Angular hakkında bir makale yazdı

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dougownsall

    dougownsall

    7 EKİM 2007
  • GALERNAYA20

    GALERNAYA20

    19 NİSAN 2011
  • kylelandry

    kylelandry

    9 AĞUSTOS 2007