Benim kişisel tercihi benim applyBindings
aramaları bölmek ve bunun yerine kapalı tek genel ad şube ile çalışmak değildir.
Yaptığım mantık, birden çok bağlamanın düzgün çalışması ve çakışma olmaması için seçilen hedef dom öğelerinizin değişmemesi konusunda çok dikkatli olmanız gerektiğidir. Ne yazık ki, biçimlendirmenin zaman içinde değişme alışkanlığı vardır ve bu da size daha sonra ViewModels'ınız ile başınızı belaya sokabilir. i çok büyük KO proje üzerinde kullandım
Benim genel yaklaşım ayrı dosyalar halinde ayrı fonksiyonel bloklar Ayrılalım bütün uygulama ör myapp
için
- Bir küresel üst düzey ad olmuştur. Genellikle kendi ayrı ad alanlarıyla. Örneğin. `myapp.navigation '
- Özellikle bir isim alanı çok büyük alırsa, daha fazla alt ad alanlarına bölünür veya uygun değilse, aynı ad alanını birden çok dosyaya bölün.
- Performansı korumak için en sonunda tüm dosyaları ezin.
Geçenlerde
kullanıyorum Bazı ad kodu yüzden myapp.navigation dosyasında Eğer Namespace("myapp.navigation", function() {
var self = this; // your myapp.navigation object
this.someFunction = function() {
}
});
olurdu Bu kendi kendine çalışan bir işlev için kullanmak için sadece kısaltmasıdır Manuel olarak oluşturulmuş bir isim alanında geçebilirsiniz. Size özel bir kapatma sağlar ve farklı js dosyasında aynı ad alanı ile birden çok Namespace araması kullanmakta serbestsiniz.
Kişisel applyBindings çağrı artık hep bu yardımcı olur
ko.applyBindings(myapp);
Umut olabilir.
Bu yanıt size yardımcı olabilir: http://stackoverflow.com/questions/8676988/example-of-knockoutjs-pattern-for-multi-view-applications. Knockout'ta çoklu görünüm modelleri kullanmak için üç seçeneği vardır. –