我正试图在集合的开头呈现一个项目(想象一下,如果你在facebook上发布一条新记录)

当我来添加(响应,{at:0});在集合中,记录正确地在0处插入到集合中,但是在项目列表的底部呈现.我很困惑,因为我之前有这个工作,但我认为我在hacky风格做的事情,只是重置和重新渲染集合.

我想知道处理这个问题的方法是什么,我应该在哪里绑定逻辑.

它是在集合的add方法上吗?目前这是空的(但我使用的是Marionette),我觉得这会覆盖骨干的默认渲染.如何再次控制它,这样我才能正确地将我的新项目添加到列表中,而不会破坏它并重新创建它.

解决方法

在Marionette中,将新项添加到视图中的集合的默认方法是使用jQuery的append方法. CollectionView类型有一个名为append Html的方法,用于执行实际的追加. (见 http://derickbailey.github.com/backbone.marionette/docs/backbone.marionette.html#section-24)

但是,您可以在特定的集合视图中轻松覆盖此方法,并在需要的任何位置附加新模型.

在您的情况下,如果您始终希望将新模型添加到列表顶部,则更改集合视图以执行此操作非常简单:

Backbone.Marionette.CollectionView.extend({
  appendHtml: function(cv,iv){
    cv.$el.prepend(iv.el);
  }
});

请注意,cv是集合视图实例,iv是集合中模型的项目视图实例.

如果你需要做更复杂的事情,比如在现有的HTML节点集合中找到确切的位置,你也可以在appendHtml函数中做到这一点.当然,这比仅仅做一个前置而不是附加更复杂,但它仍然是可能的.

希望有所帮助.

javascript – Backbone(Marionette也是如此)试图在集合的开头显示一条新记录,而无需重新渲染整个集合的更多相关文章

  1. 通过底层源码理解YOLOv5的Backbone

    yolov5的特征提取网络兼顾速度与精度,将PAN与PFN深度融合,对不同尺度鲁棒性强,可以即插即用,后接不同的检测器,下面这篇文章主要给大家介绍了关于如何通过底层源码理解YOLOv5的Backbone的相关资料,需要的朋友可以参考下

  2. php – always_populate_raw_post_data – 无法从Backbone创建访问请求有效负载

    编辑即使空回调,也会发生错误…

  3. 在Backbone渲染方法中调用jQuery插件

    我在Backbone中有一个渲染方法,基本上就是这样:这是从路由器动作中调用的:现在,我想在这个视图中的标签元素上应用一个插件.我的第一个想法是在render中调用插件:但是这不行.如果我在路由器动作中调用插件,它会工作:我宁愿不这样做,因为插件是视图的一部分,而不是路由器,所以在操作中调用它是没有意义的.有没有更好的方法来做到这一点?解决方法拜特这样做:

  4. jquery – 为什么Backbone事件替换html不起作用?

    如果我在window.myView变量中存储视图,渲染它,然后调用javascript控制台:然后调用:绑定事件将停止工作.我确信这应该是这样,但是:为什么这样做呢?>如何重新呈现子视图w/o丢失事件绑定?为什么调用myView.render()不会丢失事件绑定?

  5. 前端框架选型续 && 分享下使用 Backbone、Vue、Angular、React 的经验

    上周,知乎上有几篇关于Angular和Vue对比的文章。前端的摩尔时代同样吧,在上周结束了《ExpertAngular》的审校,这是第三本为Packt出版社审校的Angular的书。对于我们而言,采用Backbone+jQuery+Spring有几个明显的问题:jQuery带来的散弹性架构问题。在新的项目里,采用的是Angular。代码复用Ionic1.x是基于Angular1.x,由于在Web端也采用了Angular。在Angular1.x到Angular2.x这段期间里,有大量的技术人员因为奥斯本效应

  6. javascript – 未捕获TypeError:undefined不是rails3 / backbone / js的功能

    .并有一个链接到/#,没有别的.查看js控制台,我收到两个脚本的错误:application.js和backbone.js这和这个:对于js来说,这并不完全正确,在短期内没有任何帮助.任何人都可以告诉我这些错误究竟是什么意思,以及如何跟进?

  7. jquery – 是否可以阻止Backbone“读取”请求

    我有一个拥有许多视图的主干应用程序.在视图之间切换会触发Ajax请求以获取不同的集合.如果启动一个新的请求,我想停止当前的“读取”ajax请求.可能吗?解决方法好的,这就是我做的我正在保存变量中的获取请求在我的路由器中,我有一个功能,负责关闭视图和渲染视图.它还负责触发每个视图更改所需的任何触发器,但这与此问题无关.在执行任何操作之前,此路由器功能执行以下操作我希望这有帮助

  8. javascript – 如何在服务器端构建Node,Express,Connect-Auth和Backbone应用程序?

    我是一个客户端的人,刚刚进入服务器端的JavaScript世界.我有这个想法,我想我想要构建我的第一个Nodejs应用程序.我想要一个服务器端,几乎只提供一个空的shell和大量的JSON.我想将其余的逻辑放在装有Backbone.js的前端.所以我快速的打了一个小应用程序,我有几个问题.>会话变量是否安全?我应该做的不同.模块我可能应该看看?

  9. backbone.js – 使用垫片的Requirejs

    使用requirejs2的垫片,有一种方法来告诉要求一个模块已经加载?

  10. javascript – 如何在嵌套的Backbone集合上“冒泡”事件?

    ),但是当我更改子标签的属性时,它会触发Subtab模型和Subtabs上的更改事件集合,但它并没有起泡到Tab模型.至少,我想这应该是因为一个模型中的一个集合被改变了,所以模型被改变了.任何有关如何通过Backbone实现此行为的建议?

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部