你如何在Coffeescript中进行匿名课程?

Elf*_*erg 6 coffeescript backbone.js

我有一个有效的coffeescript/backbone成语,如下所示:

SidebarWidgets = ((() ->
    SidebarWidgets = { }

    class SidebarWidgetPrototype extends Backbone.View
        initialize: (options) ->
            @template = $(options.templateId).html()
        render: () ->
            $(@el).html(_.template(@template, @model.toJSON()))
            @el

    class SidebarWidgets.user extends SidebarWidgetPrototype
    class SidebarWidgets.shoppingcart extends SidebarWidgetPrototype
    class SidebarWidgets.messages extends SidebarWidgetPrototype
    SidebarWidgets
)())

class Sidebar extends Backbone.View
    views: ['user', 'shoppingcart', 'messages']
    initialize: (options) ->
        @subviews = { }
        _.each(@views,(v) =>
            subviews[v] = news SidebarWidgets[v](
                model: cxDatasets[v]
                id: 'sidebar-' + v
                templateId: '#sidebar-' + v + 'template'
            )
        )
    render: () ->
        $(@el).html()
        _.each(@views, (v) =>
            $(@el).append(@subview(v).render())
        )
Run Code Online (Sandbox Code Playgroud)

这个习惯用法的目的是提供侧边栏视图将包含的骨干视图列表,同时提供覆盖或增强窗口小部件的一个或多个方法的机会(但不是必要).

这惹恼我的事情是,对于那些确实观点并不需要修改,可他们仍然需要通过的CoffeeScript的类语法明确指定.

有没有办法用Coffeescript语法创建一个匿名?你能说出类似的东西(以下是伪代码):

thisclass = extend BackboneView
    initialize: (options) ->
Run Code Online (Sandbox Code Playgroud)

如果是这样,怎么样?

mat*_*tyr 16

thisclass = class extends BackboneView
    initialize: (options) ->
Run Code Online (Sandbox Code Playgroud)