我正在使用一个库(playcanvas),它公开了一个clone()
为层次结构中的所有节点递归调用的函数。
如果我修补函数以执行一些额外的代码,这将被执行多次。
相反,我需要在整个递归调用结束时执行我的代码,但我找不到办法。
pc.Entity.prototype.clone = function() {
... some code
// then for each child it calls itself
}
如果我尝试这种方式,我会多次执行“我的东西”。
pc.Entity.prototype.cloneOriginal = pc.Entity.prototype.clone;
pc.Entity.prototype.clone = function() {
var c = this.cloneOriginal();
// do my stuff
return c;
}
我需要“覆盖”该clone
方法,以便在其所有递归调用之后,我可以执行我的代码。