如何在莫扎特中调用帖子渲染功能?

时间:2013-07-05 07:41:15

标签: jquery dom coffeescript mozart-mvc

我有一个Mozart应用程序,我希望触发一个库/函数调用,在整个页面呈现后装饰DOM。

在使用jQuery的vanilla HTML应用程序中,我会做这样的事情:

$(document).ready(-> Library.decorate())

在这种情况下,我正在寻找某种afterRender回调或钩子,它会在视图发生变化时动态更新,而不是仅仅将其应用到window.onload(因为decorate调用需要在DOM之后再次触发)已经改变了。)

1 个答案:

答案 0 :(得分:1)

在渲染周期完成时触发的Layout类上有一个事件渲染:完成

app.coffee 或类似内容中

App.Application = Mozart.MztObject.create()

App.Application.set 'layout', Mozart.Layout.create(
  rootElement: '#main'
  states: [
    Mozart.Route.create
    viewClass: App.HomePage
    path: "/"
    title: "Mozart"

    # ...other routes...
  ]
)

App.Application.layout.bind 'render:complete',  ->
  # Your handler code here
  Library.decorate()

渲染:完成仅在循环中的所有视图都已呈现时发生,但请记住,这将在每个渲染周期后调用,如果您的应用正在进行大量的重新渲染(无论如何都应该避免),最终可能会被重新调用。