JavaScript prototipini ve devralmayı kullanarak büyük bir uygulama geliştirdim. Ancak kodumu düzenlerken zor bir zaman geçiriyorum.Nesne başvurusu ve devralmaya devam ederken prototip javascript'i düzenleyin
Carousel.prototype.next = function() {...}
Carousel.prototype.prev = function() {..}
Carousel.prototype.bindControls = function() {..}
böyle kodumu düzenlemek isteyen
:
Carousel.prototype.controls = {
next: function() { ... } ,
prev: function() { ... },
bindControls: function() { .. }
}
Ama bu "bu" olmanın değerini neden olacaktır Örneğin böyle birçok işlevi olan bir sınıf atlı karıncam kayıp.
: Sınıf başka dosyada örneğin devralınan zaman ana sınıfıBigCarousel.prototype.next = function() {...}
geçersiz kılmak için böyle bir şey benim miras böyle yapılır sahip bir küresel örneği kullanarak ona takip edebilirsiniz fakat bu sorunlara neden olur
Function.prototype.inheritsFrom = function (parentClass) {
if (parentClass.constructor === Function) {
//Normal Inheritance
this.prototype = $.extend(this.prototype , new parentClass);
this.prototype.constructor = this;
this.prototype.parent = parentClass.prototype;
}
else {
//Pure Virtual Inheritance
this.prototype = $.extend(this.prototype, parentClass);
this.prototype.constructor = this;
this.prototype.parent = parentClass;
}
return this;
};
Yani yapabilirsiniz:
BigCarousel.inheritsFrom(Carousel)
kimse "Bu" değer geçici bir çözüm biliyor mu?
Ayrıca bkz. [Prototype: bu bağlamın içeriğine erişmek için bu 'derin kapsamı] (http://stackoverflow.com/q/16502467/1048572) – Bergi