jjzjj

Marionette

全部标签

javascript - Marionette Controller 最佳实践

根据v2.4.1MarionettedocumentationController正在被弃用:Warning:deprecated.TheControllerobjectisdeprecated.InsteadofusingtheControllerclasswiththeAppRouter,youshouldspecifyyourcallbacksonaplainJavascriptobject.我对现在已弃用的最佳做法感到困惑?这是否意味着AppRouter也被弃用了?如果是这样,当前用于开发大规模Marionette应用程序的模式是什么? 最佳答案

javascript - Marionette.js ItemView - 将 subview 放入区域

我有以下ItemView模板,其中填充了客户数据(firstName,lastName),我想将CollectionView添加到div.addresses.模板EditAddresses...布局Layout.Details=Backbone.Marionette.ItemView.extend({template:'#template-customer-details',regions:{addresses:".addresses"},serializeData:function(){returnthis.model.attributes;},initialize:function

javascript - Backbone(还有 Marionette)尝试在集合开始时显示新记录,而不重新渲染整个集合

我正在尝试在集合的开头呈现一个项目(想象一下,如果您在facebook上发布了一条新记录)当我来add(response,{at:0});到集合中,记录在0处正确插入到集合中,但呈现在项目列表的底部。我很困惑,因为我以前有这个工作,但我认为我在做的是一种hacky风格,只是重置并重新渲染集合。我想知道处理这个问题的简洁方法是什么,我应该在哪里绑定(bind)逻辑。是在集合的add方法上吗?目前这是空的(但我正在使用Marionette),我觉得这会覆盖backbone的默认渲染。我如何再次控制它,以便我可以正确地将我的新项目添加到列表中,而无需全部销毁并重新创建它。

javascript - 使用 Marionette 对 Collection View 中的项目进行分组

我正在使用backbone和marionette.js构建一个应用程序。我计划使用CollectionView来展示一些项目,然后允许对它们进行过滤、排序和分组。我想知道是否有任何好的设计想法以分组方式实际附加html。我有一些想法,但我想知道是否有人可以提供更好的设计。我的第一个想法是更改CollectionView上的appendHtml方法,如果启用了分组,我可以让appendHtml函数查找或创建子组的bin并将subview放入其中。appendHtml:function(collectionView,itemView,index){var$container=this.ge

javascript - Backbone Marionette : Add header to collection view

使用Backbone.Marionette,我想呈现一个项目集合以及一个标题。我知道Marionette.CollectionView没有模板,因为它只呈现ItemView。我目前正在使用Marionette.LayoutView,但必须为“列表”区域定义一个额外的DOM元素。还有其他方法吗?可能没有额外的DOM元素?也许我可以为这个特定区域更改open()?当前结果:Featured期望的结果:ListNameItem1Item2Item3渲染代码:varcol=newLCollection([{name:"foo"},{name:"bar"}]);//Definedearlier,

javascript - Backbone.Wreqr 与 Javascript 对象

backbone.wreqr相对于jsobject的主要优势是什么,这两种情况都可以访问marionette的事件聚合器。从对象中分配/调用方法的方式与Commands/RequestResponse的工作方式不同。对我来说,除了给语义/可读性+1之外,我认为没有必要实现它。https://github.com/marionettejs/backbone.wreqr有人可以启发我吗,这是我的第一个主干(和模块化)应用程序。 最佳答案 好处是:事件和命令处理是可选的,您不需要自己手动检查undefined可选地为每个事件设置多个处理程

javascript - 使用 JavaScript API 的 Parse 中的对象安全性 - 将用户绑定(bind)到保存的对象

在Parse中管理实体时,我需要将许多对象绑定(bind)到当前登录的用户。我的担忧是:没有后端代码确保传入的User是当前登录的用户。用户可以将任何新创建的对象分配给其他用户。他们有thisexampleTODOapp在thedocumentation中未显示云代码以确保Todo分配给的User是当前登录的用户。现在我浏览了thecode我开始认为,无论何时保存一个对象,它都会与用户相关联。谁能解释为什么这个应用程序工作以及它如何将Todo与User相关联?更新:没关系,我在他们的代码中找到了指定用户保存待办事项的位置。我的问题是,是什么阻止用户编写使用其他用户ID保存待办事项的代码

javascript - Backbone Collection 和 Marionette CompositeView 中未定义的模型原型(prototype)

尝试从值列表填充集合时,我收到有关集合的model的prototype未定义的错误。看着thisquestionaboutasimilarproblem,我已经尽我最大的能力检查了模型是否在实例化集合之前实际创建。在从服务器获取数据并尝试使用来自应该填充到其中的数据。注意:使用Backbone0.9.10模型MyItemModel=Backbone.Model.extend({});收藏MyCollection=Backbone.Collection.extend({model:MyItemModel});CompositeView的相关代码MyCompositeView=Backbo

javascript - Marionette - 应用程序和模块之间的关系

我们目前正在构建一个基于Marionette的应用程序。基本上,我们有一个Marionette应用程序,上面定义了多个区域。每个区域将作为不同模块显示其View的容器。我希望每个模块都能完全控制其容器中显示的内容,但我希望应用程序分配这些区域。为简单起见,假设每个模块只有一个简单的ItemView。我正在考虑使用模块View填充这些区域的2种方法。第一种方式说的是,当每个模块初始化时,它会创建它的View,它会调用应用程序在指定区域显示它的View,例如:varapp=newMarionette.Application();app.addRegions({regionA:"#regio

javascript - 在一个 View 中模板化两个模型 - Backbone/Marionette

我正在尝试在一个View中使用两个模型,并在模板中同时使用这两个模型。我在和Marionette一起工作。这是我对View的初始化:main_app_layout.header.show(newAPP.Views.HeaderView({model:oneModel,model2:twoModel}));这是我的看法:APP.Views.HeaderView=Backbone.Marionette.ItemView.extend({template:'#view_template',className:'container',initialize:function(){//Thisco