草庐IT

backbone-boilerplate

全部标签

javascript - Backbone.js View 可以有一个模型和一个集合吗?

Backbone.jsView可以有一个Model和一个Collection吗?我问的原因是因为我正在使用一个View,该View包含一张map,上面标有地点(使用传单库)。Collection是一组模型,其中包含要在map上绘制的坐标。Model包含map边界和map形状等内容。不知道还有什么办法可以解决这个问题......感谢任何帮助,谢谢! 最佳答案 是的,您可以像这样简单地传递它:newview({model:m,collection:c});在View中,您可以通过以下方式访问两者:this.modelthis.colle

javascript - Backbone.js - 自定义收集事件

我正在尝试为View绑定(bind)实现自定义集合事件。在我看来,我想做这样的事情:this.collection.on('available',this.available);并以某种方式在我的集合中触发此方法。假设我的集合中有一个方法可以设置特定的模型属性(可用),那么我如何才能触发绑定(bind)到该方法的所有View?这是否可能,并且能够将有问题的模型传递给View进行更新。提前感谢您的帮助,非常感谢:) 最佳答案 向Backbone添加新事件非常简单。您只需在要触发事件的对象上调用trigger方法。例如,假设您在集合的一

javascript - 在 Backbone 中动态更改 url

我试图动态更改路由器内的url,但无法做到,它一直返回到基本CollectionURL。在这里,我发布了包含3个不同集合的代码,除了指向三个不同的url之外,它们的作用完全相同。我只有一个model和三个依赖于该模型的collection,它们甚至呈现相同的View。我如何动态更改url以便我只能创建一个Collection和一个Model?对于这样的案例,这是最佳做法吗?//MODELS&COLLECTIONSwindow.Post=Backbone.Model.extend({urlRoot:function(){return'http://localhost:5000/json/

javascript - Backbone.Marionette.ItemView 渲染后元素未准备好?

即使在Backbone.Marionette.ItemView的onRender方法中,我也无法访问元素。例如,我有:模板:`项目View:View=Backbone.Marionette.ItemView.extendtemplate:searchTemplateonRender:@setTypeahead['a','b','c','d']setTypeahead:(valueArray)->console.log$('#searchBox')$('#searchBox').typeaheadsource:valueArray意外地,记录到控制台的对象不包含输入元素。选择器不起作用。

javascript - Backbone Marionette 和 RequireJS 模块混淆——模块似乎未定义

我刚开始使用Marionette,我正在阅读并关注Marionette-AGentleIntroduction通过DavidSulc.这是一本非常好的读物,很容易理解如何使用companionrepository构建示例应用程序ContactManager.但是,我之前已经使用RequireJS建立了一个项目,想将那本书的思想和概念转化并整合到这个项目中。我实际上还没有走那么远,我想我可能对Marionette模块与AMD模块的结合使用有点困惑,这导致了undefined对象。更具体地说,让我列出app.js,listView.js和listController.js这应该是这个com

javascript - 如何从 Marionette.js ItemView 模板访问 Backbone.Model 方法?

我正在尝试使用backbone/marionette.js从.eco模板中访问模型的方法。我有一个带有day()方法的Expense模型,它使用moment.js返回“13th”;例如:classExpenseextendsBackbone.Modelday:->moment.get('date').format('Do')我可以按如下方式创建一个新的Expense,并调用day()方法:coffee=newExpense({name:"Coffee",amount:2.50,date:"2014-01-13T13:50:00Z"})coffee.day()#13th但是,尝试从以下V

javascript - 将 JSON 提要与 Backbone JS 集成

我目前正在做一个项目,在这个项目中,我在输入框中键入一个关键字,当我单击“发送”时,它会通过一个类似于(localhost/json-status.php?query=inputtext),它以json格式返回“query=”之后的任何内容。现在我已经用jQuery完成了这个,我正在尝试在backbonejs中再次做这个。$("#updateStatus").click(function(){varquery=$("#statusBar").val();varurl="json-status.php"+"?query="+query;$.getJSON(url,function(jso

javascript - Backbone 模型未定义?

我不明白为什么当我在this.model上运行this.model.fetch()而不是在view.render()中时,它会在view.intialize()中定义。define(['jquery','underscore','backbone','text!templates/example.html'],function($,_,Backbone,exampleTemplate){varexampleView=Backbone.View.extend({el:$('body'),initialize:function(){this.model.set({_id:this.opti

javascript - 如何在 Backbone.js/underscore.js 的比较器中实现多级排序?

想象一个像这样的模型/集合:varAModel=Backbone.Model.extend({defaults:{a:'astring',b:'anotherstring',c:'yetanotherstring'}});varACollection=Backbone.Collection.extend({model:AModel,comparator:function(amodel){...}});如何编写比较器来实现多级排序?我想按AModel的a属性排序,然后按其b属性排序,然后按其c属性。我拼凑了一个看起来像这样的比较器,但我想知道是否有更好/更智能的方法?comparator

javascript - underscore.js 和 backbone.js 的外部 html 模板

我可以将我的模板放在单独的.html文件中,然后在我的index.html中引用它们吗?索引.html:项目列表-tmpl.html:我试过了,但问题是它没有在index.html上显示模板,但它加载在正确的位置(使用Firebug查看)更新找到了一个可能的解决方案,但不推荐用于生产环境。 最佳答案 从http://coenraets.org/blog/2012/01/backbone-js-lessons-learned-and-improved-sample-app/#comment-35324得到这个为此创建一个单独的js文件