我正着手开发一个用于可视化的JavaScript网络应用程序,其特点是使用注释等为各种图形添加书签。一个典型的例子是:给定一个url状态,显示两个SVG图形和一个用于操作的时间slider,以及到处放置的一些信息注释。传统上(并且有一段时间没有编写JS),我会尝试某种模块化的JS方法:srcdatachartchartType1chartType2chartType3layoutManagerstateManagerutilslibd3?backbone?jquery?...分解数据处理、一些实用函数、状态和布局管理器等但是面对大量的库,也许我应该冷静下来尝试一种新方法?代码组织?-像
在backbone.js上设置路由时,框架似乎会自动将#添加到它的前面。即routes:{"example/:id":"handler"},将匹配www.example.com/#example/123的链接是否可以稍后在url中添加主题标签?我基本上是在尝试将我的应用程序构建为www.example.com/text/#example/123(注意#之前的文本/)。有没有办法在不改变backbone.js框架本身的情况下做到这一点? 最佳答案 如果您的服务器将包含您的应用程序的页面提供给www.example.com/text,则
我正在寻找记录我的代码的最佳方式,但我没有找到任何东西。我看过其他主题,包括this,但都没有解决我的问题。我有这样的东西:define(['backbone'],function(Backbone){/***@modulemodels/products*//***Productmodel*@class*/varProduct=Backbone.Model.extend({/**@lendsProduct.prototype*//***Somemethod*@param{String}name-Nameofsomething*@return{something}*/someMethod
我正在寻找一种方法来为预输入建议中的按钮触发不同的方法。我在下面使用主干并且我已经创建了要调用的相关事件和方法,但是当我单击时只发生默认的typeahead:selected事件,而不是我创建的方法。编辑这是这个View的相关代码:varQueryInputView=Backbone.View.extend({el:$('#query-input'),initialize:function(options){_.bindAll(this,'clearInput','initWordSuggester','initConceptSuggester','initTypeAhead');th
我正在使用Rails后端API编写一个练习Backbone应用程序,我对保存在Backbone模型上的行为感到困惑。假设一个团队有很多玩家,我想在一个POST中保存一个有很多玩家的团队。所以在Rails中我有:classTeam对于主干客户端,我定义了一个Player模型和一个Players集合(未显示)然后是包含Team模型(注意:没有Teams集合)Demo.Models.Team=Backbone.Model.extend({urlRoot:'/teams',defaults:{'team_size':12},initialize:function(){this.players=
我想使用Backbone关系在两个模型用户和任务之间建立关系。两个模型之间的关系如下:taskModel.creator_id=userModel.id//TaskModelvarTaskModel=Backbone.RelationalModel.extend({relations:[{type:Backbone.HasOne,key:'creator',keySource:'creator_id',relatedModel:Users}],//somecode});//TaskcollectionvarTaskCollection=Backbone.Collection.exten
我是第一次使用Backbone.js,并试图了解它的工作原理。我有一个搜索表单,它通过Ajax提取结果并将它们动态地写到页面上。我现在正试图弄清楚如何最好地在Backbone中构建它-IreadthisSOquestion,但我不完全理解如何将表单和结果连接在一起。这是我的HTML:SingleReturnAAUnitedResults以下是我对构建Backbone代码的想法:varSearchModel=Backbone.Model.extend({performSearch:function(str){//firetheajaxrequest.provideabound//_sea
在Backbone.js中,模型加载和保存是通过ajax调用完成的。但是,是否有任何最佳实践可以在页面加载时加载初始集合而不必通过ajax将其拉下?我正在尝试尽可能多地预先进行服务器端渲染。过去,我在html中植入了一个包含初始数据状态的json字符串的javascript变量,因此它可以在服务器端呈现,但我不确定这是否是一个好的做法。 最佳答案 不知道这是否一定是最佳实践,但是这种使用jsonobject(不是您描述的jsonstring来播种html的方法,对吧?)当然是我首选的初始加载方式。不仅是因为(显而易见的)原因,它消除
我有一个定义了一些默认值的类和一个定义了一些默认值的子类。但是当我创建子类的实例时,它只查看本地默认值,不会将其默认值与父类的默认值合并。有什么简单的方法可以做到这一点,而无需在每个子类的initialize函数中显式地将本地默认值与父默认值合并?varInventory=Backbone.Model.extend({defaults:{cat:3,dog:5}});varExtendedInventory=Inventory.extend({defaults:{rabbit:25}});varei=newExtendedInventory({});console.log(ei.att
Backbone.js带有模型验证事件,我希望将它与精简版验证框架集成。我刚开始看http://happyjs.com/还有其他建议吗? 最佳答案 jQueryValidate是我最喜欢的,它有据可查并被许多人使用 关于Backbone.js的Javascript验证框架,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/6191811/