随着课程变得越来越大,维护变得越来越难。所以我很乐意将我的一些课程分成多个文件。在文件中定义类,如:
var animal = can.Construct({
someClassMethod: function() {...}
}, {
somePrototypemethod: function() {...}
});
然后在一个单独的文件中,我希望重新打开这个类,并为其添加新的类方法/属性和原型方法/属性。
canJS有可能吗?如果不是,那应该是什么可能的解决方法?
答案 0 :(得分:2)
您始终可以向原型和构造函数添加属性和方法。这就是JavaScript的工作原理。
因此,只要您仍然可以访问animal
,您就可以
animal.anotherClassMethod = function() {}
animal.prototype.anotherPrototypeMethod = function()
在另一个文件中。然而,让类定义变得太大通常是他们做得太多的问题。如果它们太大而无法在一个文件中维护(这意味着2000多行代码),那么除了将它们拆分之外,肯定有更好的重构方法。将其拆分为单独文件的缺点当然是可能很难知道哪些功能在哪里。