问题标签 [backbone.js-collections]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Backbone.js:使用不同的数据更新集合
我有一个模型的主干集合,这些模型在页面加载时传入的数据与获取时不同。
例如,页面加载时出现的属性是:
然后,在 fetch() 上(或者在页面存在时从服务器更新,数据如下所示:
如何在保留旧数据的同时使用新数据更新主干集合?ID 不是从服务器分配的(名称保证是唯一的)。
backbone.js - Backbone.js Collection.fetch 给出错误
当我尝试调用 collections.fetch 方法时,我在控制台中收到以下错误:
这是我的 app.js :
这是我正在使用的脚本版本
但是我从服务器得到的响应是 OK 200 status 这是我得到的响应
最后这些是我的响应标头:
请帮助某人。提前致谢。
ruby-on-rails-3 - Backbone.js Collection.models 不工作
我有一个使用 Backbone.js 和 HAML 作为客户端模板语言的 Rails 项目。
在文件 app/assets/views/meeting.coffee 中:
在文件 app/assets/javascripts/templates/meeting/index.hamlc
如果我转到浏览器控制台,我会得到:
如果我可以访问.hamlc 文件中的@collection 变量,因为我将它分配给window.x。为什么我无法从 .hamlc 文件访问 @collection 项目?
我需要类似的东西
去工作
javascript - 将模型添加到 Backbone.js 集合静默失败
我正在实施博客引擎作为新工作的学习练习。我有一个名为 BlogList 的 Backbone.js Collection 类,它由 BlogModel 对象组成(BlogModel 是博客的单个帖子)。我有一个 masterBlogList,它在应用程序的整个生命周期内将所有博客文章保存在内存中(我意识到这不是一个现实的设计,但它是规范的一部分)。
我选择使用 masterBlogList 来保存应用程序的规范状态。所有新帖子、编辑等都保存在数据库 (MongoDB) 以及 masterBlogList 中。当我想在 masterBlogList 中显示帖子的子集时,我将它们复制到一个新的 BlogList 实例中,然后根据搜索条件缩小这个新实例的范围。再一次,我意识到这可能不是最好的设计(克隆 BlogModels 和 BlogLists),但这是我所拥有的,我不想重新设计它。
问题是将一个 BlogList 复制到另一个是行不通的。即使源列表不为空,目标列表也始终为空。我试图以各种方式调试它,但没有运气。这是 BlogList 源代码的相关部分:
(继续...)
即使是关于 foo 的最后一点也不起作用。我还尝试添加 postModel 的 clone() 以及新的 App.BlogModel(postModel.toJSON())。
任何帮助将不胜感激!
backbone.js - 无法遍历骨干集合,可能是获取/绑定问题
我正在将用户朋友的列表抓取到一个集合中,并且我想遍历这些朋友,以便用户可以选择一个朋友并在以后做很多事情。
在我的初始化中我有
然后在我的渲染中我有
我的车把是
控制台中的朋友集合是,所以我可以看到模型在那里。
我担心的是问题是在收集之前触发了渲染,但这是我认为friends.bind('fetched',this.render(), this)
应该解决的问题。
ruby-on-rails - 当集合加载数据时,绑定到集合的主干重置事件未触发
我是 Backbone 的新手,从 Todos 示例开始。之后,我为 Contacts 而不是 Todos 创建了该示例的新版本,它使用 Ruby on Rails Web 应用程序,并且它使用关联的 REST API 而不是 localstorage 来实现持久性。进行修改后,我能够成功地让 Backbone 应用程序更新 Rails 应用程序,但我无法让 Backbone 视图呈现 Backbone 应用程序从 Rails REST API 接收的数据。我已经通过调试器中的代码,可以看到:
- 调用函数来填充视图的事件被绑定到模型集合
- 当我获取模型数据时,集合正在使用来自服务器的数据进行更新
- 但是,绑定到集合的重置事件不会触发
谁能指出我可能导致重置事件不触发的原因?我的代码如下:
收藏:
应用视图:
javascript - 如何仅使用 Javascript 在 Backbone.js 中引导集合
背景:我正在构建一个应用程序,该应用程序需要几个大型参考数据集合才能运行。我仅限于 HTML 和 Javascript(包括 JSON)。
问题:我如何在 Backbone.js 中引导一个集合,其中集合对象在服务器上是 JSON 格式并且我只使用 Javascript?
这是我已经知道的:
- Backbone.js 引导最佳实践需要 Rails 或其他一些服务器端语言 ( http://backbonejs.org/#FAQ-bootstrap )。
- 大多数 Javascript I/0 操作都是异步的,例如从服务器加载 JSON。
- 在 Backbone.js 中,使用 fetch() 引导数据被认为是一种反模式。fetch() 也是一个异步操作。
到目前为止,这是我想出的:
'dqApp' 是我的应用程序对象。我可以显示一个微调器,并在填充集合时通过向应用程序对象发送警报来更新加载状态。
jquery - Backbone.js 无限分页显示问题
我正在使用主干无限分页。看看这张图片。在我点击“更多”之前,一切正常。一旦我点击“更多”,新结果就会被很好地添加,但“更多按钮”不会被按下。
这是我的模板(我使用 twitter 引导程序),尽管我也尝试将“更多”按钮直接放在“用户列表”div 之后,但这也不起作用。
以下是我在视图代码中添加新结果的方法:
javascript - 过滤具有多个参数的主干集合
我编写了一小段代码来熟悉backbone.js。我正在从 Twitter API 过滤 100 个结果。一旦进入,我使用时间选择器和哈希标签选择器来过滤我的结果。我希望过滤器以下列方式工作:
选择一个时间范围,在选择器标签中获取一个过滤的集合和一组过滤的哈希标签。选择一个哈希标签,在该时间范围内过滤相同的结果。
选择一个哈希标签,得到一个过滤的集合。选择一个日期并过滤使用最初选择的主题标签获得的相同结果。
不要丢失原始收藏。
这是我的代码:
我在正确的轨道上吗?我应该使用其他方式吗?我有内存泄漏的危险吗?
javascript - Backbone Collection.add 似乎不起作用
我正在骨干网中构建一个简单的待办事项应用程序。我的html是:
我的主干代码如下所示:
问题很简单,由于某种原因,第一次后.add
功能不起作用。this.todos
该add
事件也只触发一次。就好像集合已成为不可变的一样。我错过了什么明显的东西吗?