问题标签 [backbone.paginator]

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.

0 投票
1 回答
468 浏览

backbone.js - Backbone.paginator 重置状态

我在服务器模式下使用backbone.paginator,版本2.0.2。在某些时候(在主干视图文件中)我需要重置 PageableCollection 状态。

基本上我需要通过重置或其他方式将 currentPage 设置为 0 或我的默认值。由于状态对象是只读的并且标准的 Collection 方法什么都不做,例如 collection.reset() 显然没有被分页器覆盖。

有什么办法吗?

0 投票
1 回答
300 浏览

backbone.js - Backbone.Collection.reset() => 子视图与父视图不同步

我有一个项目清单。它们存储在骨干可分页集合中。

它们是这样显示的

|---item1---------------|
|---项目2---------------|
|---项目3---------------|
|---item4---------------|
|---item5---------------|
|---第 6 项---------------|
|---第 7 项---------------|
<< 1,2,3...结束>>

用户可以单击单个项目以在单独的页面中打开详细视图。详细视图在创建时已初始化侦听器。这些侦听器绑定到项目模型。

由于详细视图很大,我通过切换可见性将其缓存在 DOM 中。随后单击该项目将切换缓存视图。

------问题来了-----

当项目列表切换到另一个页面时,集合被重置(通过分页器)。并且之前存储在集合中的所有模型都被取消引用,并创建了一组新模型。所以页面来回切换后,之前打开的item就有了自己不同的副本存储在collection中。因此,当我在详细视图(在视图缓存中)更改项目名称时,项目列表中的名称不会更改。

观点不同步!因为它们引用了不同的模型。

不确定其他人是否遇到过这种情况。如果你这样做,请与我分享你是如何解决它的。

非常感谢。

0 投票
1 回答
367 浏览

javascript - Backbone.Paginator 无限模式,带木偶

在我的 Marionette 应用程序中,我有一个 Collection 视图,其中包含一个childViewfor it's models。

分配给 的集合CollectionViewPageableCollectionfrom Backbone.paginator。模式设置为infinite

当像这样请求下一页时getNextPage(),集合正在获取数据并将响应分配给集合,覆盖旧条目,尽管完整版本存储在collection.fullCollection. 这是我可以找到CollectionView需要呈现的所有条目的地方。

Marionette 对集合事件很聪明,childView当模型被添加到集合中时,它将使用它的新模型渲染一个新模型。childView当它的模型被删除时,它也会删除 a 。

但是,在这种情况下,这并不是我想要做的,因为collection不代表我想要的呈现列表,collection.fullCollection而是我想要在页面上显示的内容。

有没有办法让我的 Marionette 视图考虑collection.fullCollection而不是collection,或者是否有更适合 Marionette 的分页框架?

这是代码的小提琴

对于那些不喜欢小提琴的人:

0 投票
1 回答
260 浏览

javascript - Backbone.PageableCollection 的 fullCollection 重置后行为怪异

我有一个 Backbone.Pageable 集合,我正在尝试对其进行过滤,但并使用过滤后的值重置该集合,但在重置之后,collection.fullCollection 的模型比原始模型少一个。

这是我的收藏:

你可以在这里查看这个小提琴。

0 投票
0 回答
109 浏览

javascript - Backbone Paginator 破坏了 Webpack

我有一个使用 Webpack 和backbone.paginator 的小应用程序。没有 webpack 也能完美运行。

使用 webpack,当我在我的集​​合中需要主干.paginator 时,它会完全破坏应用程序。我什至不必使用分页器,只需要求它会破坏应用程序。它实际上会创建一个可分页的集合并正常工作,但如果我在需要分页器后尝试创建一个视图,它会说 Backbone.Marionette 未定义。

这是模型:

如果有任何意见,只要我需要它就会有错误。如果我删除 require('backbone-paginator') 就没有错误。

这是我的 webpack.config.js:

编辑:我删除了几乎所有内容并将其缩减为:

它不允许我在需要backbone.paginator 之后定义视图。如果我 console.log Marionette,它仍然存在,但是当我定义一个视图时,它说它是未定义的。

0 投票
2 回答
396 浏览

javascript - 是否可以在没有背景网格的情况下进行分页?

我正在尝试实现像datetable这样的服务器端分页,我发现了主干.paginator library,我不知道是否还有别的东西。

通过他们的示例,他们使用了另一个库来帮助完成此任务,即backgrid.js及其分页器插件

没有Backgrid可以做这个分页吗?你能在这方面添加任何例子吗?

0 投票
1 回答
587 浏览

javascript - 如何使用 Backbone.PageableCollection 和自定义 Express 路由处理分页

我正在编写一个使用名为 LeanCloud 的数据库的应用程序。我设置了一个页面,可以在其中查看数据库上的所有用户,但 LeanCloud 设置为每个请求仅发送 100 条数据。

数据库中目前有 853 个用户,我可以更改一个设置,以便每个请求发送 1000 条数据,但我觉得这会大大降低应用程序的速度,并且用户数量很可能很快就会超过 1000 .

这是我的快速获取路线:

显然,响应包含userInfoand pageInfo,我可以在/api/users?page=1&per_page=30. 为什么是查询字符串?这将我带到问题的下一部分。

我正在使用主干集合,经过一些研究,我发现主干.paginator是用于分页的主干集合的替代品。这就是构建查询字符串的原因。

在此页面上,有一个表格显示statequeryParams说可以设置这些以适应我不完全理解的服务器 API。

我应该在这里做什么?有没有办法可以将服务器响应中的值设置为 queryParams 上的值或来自主干.paginator 的状态?