【发布时间】:2011-09-13 13:24:36
【问题描述】:
我正在为一个项目构建一个基本的 CRUD 系统,我们决定捆绑 Backbone.js 和 CoffeeScript 以抽象出更多的 JavaScript 功能。对我来说学习曲线非常陡峭,因为我不是 JS 专业人士。
目前,我只是想拉一张唱片。任何记录。因此,在我继续之前,我已经设置了一个虚拟路由来通过 JSON 提供“产品”记录集,以查看它是如何呈现的。
window.Product = Backbone.Model.extend
initialize: -> console.log this
window.Products = Backbone.Collection.extend
model: Product
initialize: -> console.log this
url: '/dummy'
所以,在控制台中,我输入:
product = new Product()
而且它似乎可以很好地渲染产品。但是当我输入时:
product.fetch()
返回:
TypeError: Cannot call method 'ajax' of undefined
我对 Collection 进行了同样的尝试。
products = new Products()
products.fetch()
TypeError: Cannot call method 'ajax' of undefined
我已经让其他部分(视图渲染等)工作得很好,但是这个 ajax 错误反复出现在我身上。我花了几个小时浏览不同的文档(包括官方文档,以及我可以从 wiki 追踪到的所有信息),用纯 JavaScript 和 CoffeeScript 尝试代码,实现不同的范围(带/不带窗口命名空间)等。Google 上没有任何内容。
这一定是一件非常简单的事情,我可能应该知道,但我一生都无法弄清楚。或者这是我错过的文档中的一处。谁能告诉我我做错了什么?
【问题讨论】:
标签: ruby-on-rails-3 backbone.js coffeescript