【发布时间】:2014-09-11 12:48:59
【问题描述】:
我正在关注 Brian Mann 的backbonerails.com 教程来学习主干/木偶。出于某种原因,当我转到 http://localhost:3000/#users 时,不会调用 listUsers。任何想法或想法都非常感谢!
知道我哪里出错了吗?
@Demo.module "UsersApp", (UsersApp, App, Backbone, Marionette, $, _) ->
class UsersApp.Router extends Marionette.AppRouter
appRoutes:
"users": "listUsers"
UsersApp.API =
listUsers: ->
console.log "listUsers"
App.addInitializer ->
new UsersApp.Router
controller: UsersApp.API
我还可以向 UsersApp 添加一个初始化程序并让它触发控制台消息。
UsersApp.addInitializer: ->
console.log("initialized UsersApp")
同样,如果我将它添加到,我也会看到一条日志消息
App.addInitializer ->
console.log "initialized"
new UsersApp.Router
controller: API
直到初始化器运行之后,我才真正开始主干路由:
@Demo = do (Backbone, Marionette) ->
App = new Marionette.Application
App.addRegions
headerRegion: "#header-region"
mainRegion: "#main-region"
footerRegion: "#footer-region"
App.addInitializer ->
App.module("HeaderApp").start()
App.module("FooterApp").start()
App.on "initialize:after", ->
if Backbone.history
Backbone.history.start()
应用程序
在玩弄它时,我的 UsersApp.Router 对象似乎实际上并没有被创建。这可能是问题吗?
编辑
将控制器添加为 UsersApp.API 似乎越来越近了:
App.addInitializer ->
new UsersApp.Router
controller: UsersApp.API
但现在我得到了一个不同的错误:
Uncaught TypeError: Cannot read property 'listUsers' of undefined
为什么找不到 listUsers 函数?
【问题讨论】:
标签: javascript backbone.js coffeescript marionette