Javascript 如何扩展KineticJS形状

Javascript 如何扩展KineticJS形状,javascript,canvas,kineticjs,Javascript,Canvas,Kineticjs,对于KineticJS版本4.0.0或更低版本,形状扩展了一个类,可以通过 var MyCircle = Kinetic.Circle.extend({ init : function(config) { this._super(config)); }, myFunc : function(){} }); 或 在版本4.0.1中,他们删除了对类实用程序的依赖,并实现了一个定制的解决方案,该解决方案应该更快 如何使用新的解决方案扩展形状?Kinetic.G

对于KineticJS版本4.0.0或更低版本,形状扩展了一个类,可以通过

var MyCircle = Kinetic.Circle.extend({
    init : function(config) {
        this._super(config));
    },
    myFunc : function(){}
});

在版本4.0.1中,他们删除了对类实用程序的依赖,并实现了一个定制的解决方案,该解决方案应该更快


如何使用新的解决方案扩展形状?

Kinetic.GlobalObject变为Kinetic.Global(>4.0.1),然后
Kinetic.Global现在是Kinetic.Util(2013版),下面是一个解决方案:

(function() {
    Kinetic.MyCircle = function(config) {
        this._initMyCircle(config);
    };

    Kinetic.MyCircle.prototype = {
        _initMyCircle: function(config) {
            Kinetic.Circle.call(this, config);
            },
        myFunc : function(){
        }
    };

  Kinetic.Util.extend(Kinetic.MyCircle, Kinetic.Circle);
})();

我认为它是Kinetic.Util.extend(Kinetic.MyCircle,Kinetic.Circle);现在(例如,请参见中的circle对象)是否有标准的命名约定来代替_initMyCircle?它似乎是多余的,因为它显然是MyCircle初始值设定项,但调用它会导致错误
(function() {
    Kinetic.MyCircle = function(config) {
        this._initMyCircle(config);
    };

    Kinetic.MyCircle.prototype = {
        _initMyCircle: function(config) {
            Kinetic.Circle.call(this, config);
            },
        myFunc : function(){
        }
    };

  Kinetic.Util.extend(Kinetic.MyCircle, Kinetic.Circle);
})();