我有一些CoffeeScript类,可以在代码中使用和扩展它们。我如何使用angularjs不必像创建普通模块一样

MyNamespace = MyNamespace || {}
MyNamespace.SuperClass = class


并在另一个文件中

MyNamespace = MyNamespace || {}
class ChildClass extends MyNamespace.SuperClass
MyNamespace.ChildClass = ChildClass


我可以简单地写

angular('MyModule').factory, 'SuperClass', () ->
    class SuperClass
        constructor: (@id) ->
    return SuperClass


并通过该类扩展

angular('MyModule').factory, 'ChildClass', ['SuperClass', (SuperClass) ->
    class ChildClass extends SuperClass
        constructor: (id) ->
            super(id)
    return ChildClass
]


我的问题实际上是Im使用CoffeeScript将所有对象编译到一个文件中。现在,如果子类高于基类,则该基类将是未定义的,并且我会得到一个错误。我正在寻找一种简单易用的方法来解决此问题。

最佳答案

如果您使用Angular的DI系统,则应确保以正确的顺序实例化您的类,而不管先加载哪个。您的示例实际上有问题吗?

关于javascript - 我可以使用AngularJS处理和加载我的对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12716832/

10-16 18:59