Backbone.js 主干本地存储“;“未定义”不是一个函数;

Backbone.js 主干本地存储“;“未定义”不是一个函数;,backbone.js,local-storage,backbone-local-storage,Backbone.js,Local Storage,Backbone Local Storage,我正在使用: $(function() { console.log(Backbone.LocalStorage); // undefined!! var Todo = Backbone.Model.extend({}); var Todos = Backbone.Collection.extend({ model: Todo, localStorage: new Backbone.LocalStorage("todos") });

我正在使用:

$(function() {
    console.log(Backbone.LocalStorage); // undefined!!
    var Todo = Backbone.Model.extend({});
    var Todos = Backbone.Collection.extend({
        model: Todo,
        localStorage: new Backbone.LocalStorage("todos")
    });
});​
第一个
console.log()
给出
未定义的
。然后,
localStorage:…
行出现错误

未捕获类型错误:未定义不是函数


由于
Backbone而应为。本地存储
未定义
,但为什么

正在加载的
backbone.localStorage-min.js

看起来它已经过时了,而且根本没有定义主干.LocalStorage
。您正在使用的
backbone.localStorage-min.js
版本定义了
window.Store
,而不是
backbone.localStorage
。如果您切换到该():

然后你就可以通过构建你的
todo
集合了。我不知道当你真正尝试使用它时,事情会有多好。“Sun Aug 14 2011 09:53:55-0400”在互联网时代已经很久很久了,所以这个版本相当古老

如果从Github切换到最新版本:

您将看到JavaScript中存在一些差异,当您使用
新主干时,一切都将开始工作。LocalStorage('todos')


另一个答案是正确的-1.0已过时

我已将backbone.localstorage更新为最新版本:

(制作)

(开发)


希望有帮助

加载主干后是否已添加。js@josnidhin,是的,我在2013年2月1日的JSFIDDLAS中做了,CloudFlare的cdnjs仍在提供非常过时的2011年8月14日的副本。我也有同样的问题,没有考虑检查cdnjs版本是否是最新的。@joemaller:我想知道这是否是版本号问题。页面上说的是v1.0,讨论的是主干网。LocalStorage
,可能是旧的
窗口。Store
版本也被标记为v1.0。我想是的,有几个问题还没有解决,希望他们能解决。所有问题都解决了:截至2月2日,CDN是最新的:)见@RyanKirkman的答案。
var Todos = Backbone.Collection.extend({
    model: Todo,
    localStorage: new Store("todos")
});