मेरे पास स्थैतिक गुण हैं जो मैं अपने बैकबोन के उदाहरणों से एक्सेस करना चाहता हूं। मॉडल ऑब्जेक्ट्स। मुझे पता है कि मैं विधि को कॉल करने के लिए अभिभावक कन्स्ट्रक्टर को हार्डकोड कर सकता हूं, लेकिन यह मुझे पॉलिमॉर्फिक स्थिर कार्यों से रोकता है। उदाहरण के लिए, यदि आवश्यक हो, तो ExtendedInventory
में foo
फ़ंक्शन को ओवरराइड करने में सक्षम होना चाहिए, बिना किसी अन्य कोड को बदलने के।मॉडल नाम निर्दिष्ट किए बिना, मैं उस मॉडल के उदाहरण से स्थिर बैकबोन.मोडेल फ़ंक्शन कैसे कॉल कर सकता हूं?
var Inventory = Backbone.Model.extend({},
//STATIC
{
foo: function() {
alert('bar');
}
});
var i = new Inventory({});
i.constructor.foo(); //This works!
var ExtendedInventory = Inventory.extend({});
var ei = new ExtendedInventory({});
ei.constructor.foo(); //THIS DOES NOT WORK
//How do I generically access the `Inventory.foo()` function via the `ei` object. I would
तो, यह काम करता है लेकिन मैं इसे बहुत अच्छी तरह से समझ में नहीं आता और यह केवल फ़ायरफ़ॉक्स में काम करता है : ei.constructor.prototype .__ proto __। constructor.foo() –
मैंने बैकबोन वाले स्थिर सदस्यों का उपयोग करने के उदाहरणों के साथ एक ब्लॉग पोस्ट लिखा है जो इस प्रश्न में आने वाले किसी के लिए उपयोगी हो सकता है। http://taurenmills.wordpress.com/2011/10/08/backbone-js-with-class-properties/ – Tauren
+1 वर्ग गुणों पर ध्यान आकर्षित करने के लिए +1 – Chuck