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")
});