मेरा व्यू मॉडल बहुत बड़ा हो रहा है इसलिए मैंने इसे कई फाइलों में विभाजित करने का फैसला किया। मैंने पहले से ही कई अलग-अलग दृष्टिकोणों की कोशिश की है लेकिन कुछ भी काम नहीं कर रहा था।कई फाइलों में नॉकआउट व्यू मॉडल को विभाजित करना
namespace.model = function(constructorParam) {
var self = this;
self.param1 = ko.observable(constructorParam.param1);
self.param2 = ko.observable(privateFunction(constructorParam));
self.clickEvent = function() {
// do something with params
// call some private funcitons
privateFunction2(self.param2);
};
function privateFunction(param) {
// do some stuff
}
function privateFunction2(param) {
// do some stuff
}
};
मैं एकाधिक फ़ाइलों भर में निजी कार्यों और नमूदार मापदंडों का उपयोग करने की जरूरत है:
मेरा विचार मॉडल की तरह लग रहा है। मेरा अंतिम मॉडल इस तरह दिखना चाहिए:
// file 1
// contains constructor and param initialization + many common private helper funcitons
namespace.model = function(constructorParam) {
var self = this;
self.param1 = ko.observable(constructorParam.param1);
self.param2 = ko.observable(privateFunction(constructorParam));
function privateFunction(param) {
// do some stuff
}
function privateFunction2(param) {
// do some stuff
}
};
// file 2
// contains event hendlers
self.clickEvent = function() {
// i need to acces properties from namespace.model
self.param1
// call some private funcitons
privateFunction2(self.param2);
};
// view model initialization
ko.applyBindings(new namespace.model(initValues));
क्या इस तरह कुछ नॉकआउट के साथ हासिल करना संभव है? धन्यवाद
क्या आवश्यकता के बिना इसे करना संभव है? –
@MajoB, हाँ, यह RequJS के बिना किया जा सकता है। हालांकि, RequJS जैसी लाइब्रेरी का उपयोग करने के लाभों में से एक यह है कि यह निर्भरता को स्पष्ट करता है, जो कि यदि आप यहां वर्णित भागों से अपने मॉडल को लिख रहे हैं तो यह बहुत उपयोगी हो सकता है। – kiprainey