Dom Spine.js从元素获取关联的控制器

Dom Spine.js从元素获取关联的控制器,dom,spine.js,Dom,Spine.js,我得到了一个html元素和一个关联的spine.js控制器 class App.Sidebar extends Spine.Controller tag: 'aside' className: 'sidebar' 如何从元素中获取控制器?大概是这样的: con = $("aside.sidebar").spineController().someControllerMethod() 我使用的是jquery+spine.js。我浏览了控制器的源代码,但它似乎没有从元素()访问控制器的内

我得到了一个html元素
和一个关联的spine.js控制器

class App.Sidebar extends Spine.Controller
  tag: 'aside'
  className: 'sidebar'
如何从元素中获取控制器?大概是这样的:

con = $("aside.sidebar").spineController().someControllerMethod()

我使用的是jquery+spine.js。

我浏览了控制器的源代码,但它似乎没有从元素()访问控制器的内置方法。我要做的是创建一个全局变量来保存控制器,以便我可以从其他位置访问它:

app = new App()

# inside of App constructor:
@foo_widget = new App.FooWidgetController()

# from other non-spine code:
app.foo_widget.method()
另一个选项是使用jquery的data()方法自己进行关联:


谢谢!在第二个选项中,它必须是
@el.data“controller”,此
class App.FooWidgetController
  constructor: ->
    super
    @el.data 'controller', this

# from other code:
$('#widget').data('controller').method()