我对两者之间的差异感到很困惑。似乎Collection.create()(触发add和sync事件)可以看作是Collection.add()(触发add>)和Model.save()(触发sync)?以上评价是否正确?我错过了什么? 最佳答案 没错。是一种捷径。Documentationstates:createcollection.create(attributes,[options])Conveniencetocreateanewinstanceofamodelwithinacollection.Equivalenttoins
我试图让hammerjs事件与主干一起工作,但无法让它响应事件。我已经尝试过以下方法..http://cijug.net/tech/2013/01/16/backbone-hammer/https://gist.github.com/kjantzer/4279025我还在我的View中放了下面一段代码initialize:function(){this.events=_.extend({},this.defaultEvents,this.events||{});}JSfiddle:http://jsfiddle.net/XcYhD/代码JSAppView=Backbone.View.e
我需要将一个id传递给一个集合以供在url中使用(例如/user/1234/projects.json),但我不确定该怎么做,最好举个例子。我的应用程序的结构方式是在启动时拉取并呈现“用户”集合,然后我希望在单击用户时将他们的“文档”从服务器拉入新集合并呈现在新View中.问题是将用户ID获取到文档集合中以提供documents.fetch()的相关URL。我想我明白了,这是一个例子://inthetheviewinitializefunctionthis.collection=newDocs();this.collection.project_id=this.options.proj
我有一个问题,很难注意到,因为在大多数情况下一切正常。只有当我尝试在我的集合初始化函数中操作我的数据时,我才发现问题。Backbone文档位于http://backbonejs.org/#Collection-constructor“如果您定义了一个初始化函数,它将在创建集合时被调用。”所以我将其解释为,我的初始化函数只有在我的模型设置好之后才会运行。“这听起来很理想,”我说,但后来我遇到了这个。我的Bootstrap代码如下:newMyCollection();我的收藏:varMyCollection=Backbone.Collection.extend({model:MyModel
我正在设置一个由Backbone驱动的应用程序。我面临一个“应该很简单”的问题,我有一个名为“Message”的模型,一个名为“MessageList”的集合,以及名为“MessageView”和“MessageListView”的View。MessageListView代码呈现MessageList。我有4个切换按钮,用于过滤MessageListView显示的内容。过滤器按钮是“全部”、“事件”、“标记”和“忽略”。“全部”是页面加载的初始过滤器。当用户按下“已标记”过滤器时,只应显示带有标记==1的消息。再次按下“全部”时,所有消息应再次出现。我遇到的问题,也是我设计中的问题,是
我正在尝试使用backbonejs构建一个切换View,当我切换View几次时,发现我的绑定(bind)事件被触发了多次。下面是更好说明的代码:htmlhaloworldredviewblueviewCSS#red_view{width:400px;height:400px;background-color:red;}#blue_view{width:400px;height:400px;background-color:blue;}.button,.button2{width:300px;height:300px;background-color:gray;}javascriptRe
我正在尝试为一个对象浏览器编写一个BackboneView,该View旨在在具有不同对象类型和略有不同操作的多个地方实现。我曾尝试简单地在我的浏览器中扩展主干View,然后在我的实现中扩展浏览器,但是这给我留下了一些共享的属性。这是一个不受欢迎的效果,因为数据会附加到每个浏览器创建的所有实现中。有人可以阐明解决此问题的方法或替代解决方案吗?以下是一些代码示例,可让您更好地了解它的当前状态:varBrowserView=Backbone.View;_.extend(BrowserView.prototype,Backbone.View.prototype,{className:'brow
我想我有一个非常简单的问题,很难说出来,因此很难找到解决方案。设置:PathCollection是一个Backbone.CollectionofPathsPath是一个Backbone.Model,它包含NodeCollection(它是一个Backbone.Collection)和EdgeCollection(它是一个Backbone.Collection)。当我获取PathCollectionpaths=newPathCollection()paths.fetch()显然,路径被实例化。但是,我缺少可以允许Path从属性哈希实例化其子模型的地方。我真的不能使用解析,对吧?基本上,我
我相信这是一个非常容易解决的问题,但到目前为止我发现的帖子似乎都没有直接解决这个问题:如何遍历集合以获取每个模型?我尝试使用的第一个方法是下划线的each方法。这是我的电话和功能:collection_var.each(paintThings);这是我的功能:functionpaintThings(){console.log(this);console.log(this.model);varthing_type=this.model.get("type"),thing_other=this.model.get("otherAttribute");console.log(this.mod
通常您在页面加载期间使用require.js加载Backbone应用程序加载一些依赖项,并启动应用程序。如果您的应用需要操作DOM,您可以使用domReady插件require(['domReady','app'],function(domReady,App){domReady(function(App){App.Initialize()}):});但我的应用程序与FlashAPI通信。我需要等到flash插件完成加载它自己的xml。完成后,我将回调发回javascript。此回调需要使用require.js中的依赖项来触发app.initialize()第一种方法和第二种方法(等待d