ecomfe/oo

一个非oo框架实现继承的class,继承自一个oo框架定义的class,会出错

otakustay opened this issue · 4 comments

https://github.com/ecomfe/oo/blob/master/src/oo.js#L138

这里会无限递归,因为默认constructor指向自己

fixed at e9abd2a

我这里的继承关系是 AdListModel --> ListModel --> BaseModel --> UIModel --> Model,最后还是无限递归了。判断 kclass.caller === this.constructor 的地方得到的是 BaseModel vs AdListModel,没进去,还是进了后面的 this.constructor.apply

确实还有问题,kclass.caller === this.constructor 仅修复了一层的继承