jjzjj

backbone-forms

全部标签

javascript - Backbone.js目录结构

Javascript/Backbone的新手。我想知道在设置目录结构时Backbone中的“约定”是什么。我有一个Backbone.js应用程序,它有两个主要的“入口”点。一个是Admin(admin.mydomain.com),另一个是User(user.mydomain.com).现在我对如何命名文件/目录感到困惑。特别是,这样做是否更好:-views--admin----items.js--user----items.js-templates--admin----items.html--user----user.html--models--collections或-admin--

javascript - Backbone.js 的工作原理图?

正在对backbone进行全面grocking。是否有任何可视化资源或图表来表示主干架构的全部范围?您会推荐任何其他资源吗?谢谢! 最佳答案 看看@Anton对这个问题的回答:UnderstandingtheinternalstructuraldependenciesofMVCinBackbone.js您真的不需要在架构上花费太多时间-它是一个框架,可用于帮助使用简单的OO构造或基于事件的设计进行组合。你基本上只有4组类(可以这么说)模型-存储实际数据,您需要以Restful方式(使用JSON/ajax)存储/操作这些数据并与服务器

javascript - 如何在实例化期间捕获新 Backbone.Model 中的验证错误?

绑定(bind)到现有模型的“错误”事件很容易,但是确定新模型是否有效的最佳方法是什么?Car=Backbone.Model.extend({validate:function(attributes){if(attributes.weight==null||attributes.weight 最佳答案 可以通过调用模型的validate方法显式触发验证逻辑。但是,这不会导致触发error事件。您可以通过调用trigger方法为模型手动触发错误事件。实现所需行为的一种方法是在初始化方法中手动触发事件:Car=Backbone.Mode

javascript - Backbone.js View 移除和解除绑定(bind)

当我的页面打开时,我调用集合并填充View:varpagColl=newpgCollection(e.models);varpagView=newpgView({collection:pagColl});另外(通过日期选择器),我希望用不同的模型填充同一个集合并再次实例化View。我遇到的问题是如何在打开新的之前关闭原始的pagView并清空pagColl,因为这个“幽灵View”给我带来了问题.上面提到的变量是局部变量?是不是我需要创建一个全局的pagColl和reset()this? 最佳答案 其实已经有很多关于这个话题的讨论了

javascript - Backbone.js:从集合构建 JSON 数组

我有一个Backbone集合Platforms。Platforms的结构如下所示:PlatformsPlatformListmodels0:Platformattributesid:1name:"somename"1:Platformattributesid:2name:"someothername"我需要从集合中的模型中提取属性,并按以下格式构建一个JSON数组:[{"id":1,"name":"somename"},{"id":2,"name":"someothername"}]调用Platforms.models.toJSON()或JSON.stringify(Platforms

jquery - backbone.js 应用程序范围的功能,不依赖于特定的 Controller /模型

我正在使用backbone-boilerplate,你可以找到它here.我想知道如何添加全局功能,它没有明确绑定(bind)到任何特定的集合、模型、View等。一个例子是“注销”功能,它可能看起来像这样:varlogout=function(){//ClearFavorites//Handleasynchronouslogging(allin-applogsaresenttotheserveratlogout)//Redirecttotheloginpage//Doothercleanup}基本上,这将处理许多模型/集合,包括Favorites、Events、Logs、Users、和

javascript - Backbone collection.create() 不返回更新后的模型

为了学习主干,我正在创建一个类似Twitter的应用程序。所以你知道Twitter每N秒向服务器发送一个GET请求来检查新推文。如果有新推文,它会创建隐藏的li元素并显示带有“NnewTweets”的按钮。如果您单击它,它会显示隐藏的li元素,显示新推文。但是当您添加一条新推文时,行为会有所不同:推文是可见的。您无需单击按钮即可看到它。我已经为隐藏的推文制作了第一部分。对于发布新推文并直接展示它的部分,我认为通过创建新模型、调用collection.create()并触发正确的事件会很容易做到,例如:varnewTweet=newTweet();newTweet.set(/*setth

javascript - 如何让 Backbone.ajax 成功返回数据

我试图让Backbone.ajax返回集合“collection”。我在程序的另一部分需要模型。我想让数据在与ajax方法相同的级别上可用。Backbone.ajax({dataType:"jsonp",url:"https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=twitterapi&count=25",data:"",success:function(val){valvarModel=Backbone.Model.extend

javascript - 引用 Backbone View 的子元素

刚刚渲染了一个像这样的View:render:function(){this.$el.html(this.template(this.model.toJSON()));returnthis;},如何引用模板的子元素之一并对其应用jQuery函数? 最佳答案 主干View公开adollar$function这将在幕后使用jQuery,但在View本身的上下文中。this.$('.child_element_of_my_view_template')即使View已分离($el不在DOM中),这也会起作用,但显然只有当您要选择的元素存在于

javascript - Backbone.js 中的可选路由参数? (再次)

我正在尝试在Backbone0.9.10中设置路由。我想匹配以下类型的路由:/england//england/birmingham/france/france/paris...等这是我目前在路由器中的内容:varAppRouter=Backbone.Router.extend({routes:{"":"index","(/:country)":"index","(/:country)(/:city)":"index"},index:function(country,city){console.log('index',country,city);}});varStateApp=newA