首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >初始backbone.js数据提取

问初始backbone.js数据提取
EN

Stack Overflow用户
提问于 2011-03-31 01:13:03
回答 2查看 13.3K关注 0票数 16

过去几天,我一直在使用backbone.js,编辑Todos示例并编写自己的版本。

现在我正在考虑创建一个具有多个路由的控制器,但是在遵循Todos示例之后,我发现调用Todos.fetch()会导致重新呈现这些项。我觉得这叫刷新事件?

backbone.js文档说:

注意:在页面加载时,不应该使用fetch填充集合--加载时所需的所有模型都应该已被引导到位。fetch用于延迟加载接口模型,这些接口不是立即需要的:例如,文档中的便笺集合可能会被切换、打开和关闭。

那么,加载数据的最佳方式是什么?我可以使用ajax调用来获取数据并在实例化主控制器时传递它吗?如果我要更改页面,并显示一个新的视图,那该怎么办?我可以直接调用fetch()函数吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-31 17:22:03

这里有一些文档来提醒您,您应该在初始页面加载时加载所有数据,并将fetch用于所有后续加载。

您可以拥有这样的代码:

代码语言:javascript
复制
MyCollection = new Collection({some json data});

比加载页面要快得多,然后是几个加载数据的请求。

票数 7
EN

Stack Overflow用户

发布于 2011-03-31 02:16:59

我对文档的措辞也有点困惑,但是fetch是一种告诉您的Collection或Model通过您自己的同步函数或Backbone.sync获取数据的方法,后者已经在内部使用ajax,可以将结果传递给您的成功或错误函数。

就您提到的Todos示例而言,Collection就是这样工作的。它更新模型,然后触发‘刷新’事件,这可能迫使您的视图被重新呈现,就像您说的。

我强烈建议查看Backbone.js代码。它非常有效地记录了事件和方法调用的流程,因此很容易掌握。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5494306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档