rails:backbone-on-rails gem-

Lea*_*cim 3 ruby-on-rails backbone.js

尝试跟随Ryan Bates Backbone.js教程来构建抽奖应用程序,但我已经遇到了第一段代码的问题.在application.js的init函数中,他初始化了Raffler路由的新实例,它应该触发警报"主页"但我在Firebug中遇到以下错误,我不明白

entries.js:5Uncaught ReferenceError: Raffler is not defined
entry.js:15Uncaught ReferenceError: Backbone is not defined
entries.js:23Uncaught ReferenceError: Backbone is not defined
index.js:17Uncaught ReferenceError: Backbone is not defined
application.js:7Uncaught SyntaxError: Invalid regular expression: missing /
raffler.js:9Uncaught TypeError: undefined is not a function
Run Code Online (Sandbox Code Playgroud)

我有什么想法可以解决这个问题?

Java脚本/ raffler/application.js中

window.Raffler =
  Models: {}
  Collections: {}
  Views: {}
  Routers: {}
  init: -> 
    new Raffler.Routers.Entries()
    Backbone.history.start()

$(document).ready ->
  Raffler.init()
Run Code Online (Sandbox Code Playgroud)

路由器/ entries.js

class Raffler.Routers.Entries extends Backbone.Router
  routes:
    '': 'index'

  index: ->
    alert "home page"
Run Code Online (Sandbox Code Playgroud)

更新

在我运行生成器//= require_tree .之后立即执行了需要jquery_ujs,我发现(我认为)是导致一些问题的原因.但是,我现在把它移到了底部,我仍然得到这个错误

Raffler.Routers.Entries is not a constructor
[Break On This Error]   

new Raffler.Routers.Entries();
Run Code Online (Sandbox Code Playgroud)

的application.js

    //= require jquery
    //= require jquery_ujs
    //= require underscore
    //= require backbone
    //
    //= require .//raffler
    //
    //= require_tree ../templates/
    //= require_tree .//models
    //= require_tree .//collections
    //= require_tree .//views
    //= require_tree .//routers
    //= require_tree .
Run Code Online (Sandbox Code Playgroud)

Ric*_*ler 7

我遇到了同样的问题.对我来说,解决方案是删除线

//= require_tree .

application.js文件中,因为这一行在下划线和backbonejs的行之前.