# 对于长主题实例，缺乏分页如何影响体验？

**URL:** <https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687>\
**Category:** Community Building\
**Created:** [2019年十一月29日 07:43 UTC](https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687 "2019-11-29T07:43:44Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![polarathene](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/polarathene/32/144974_2.png) [@polarathene](https://meta.discourse.org/u/polarathene)\
**Post date:** [2019年十一月29日 07:43 UTC](https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687/1 "2019-11-29T07:43:44Z")

</div>

目前我们正使用一个基于旧版 PHP 的分页论坛，并正在评估 Discourse。我记得 Discourse 曾明确表示不支持分页主题（也不支持类似 Reddit 的嵌套式主题讨论）。我想听听各位在实际运行中，关于长主题的体验如何？是否存在什么问题？

例如，有人向我推荐了这篇 [NodeBB 论坛帖子](https://forum.netgate.com/topic/112527/playing-with-fq_codel-in-2-4/714)（起初我并不知道它是 NodeBB，这种风格我只在 Discourse 中见过）。该帖子内容非常庞大，如果尝试在其中滚动浏览（尤其是向上滚动），会因其中大量图片加载问题而带来严重的用户体验问题。

Discourse 是否不受此类问题影响，还是也会遇到同样的情况？我曾觉得主题右上角那个小小的滚动条 UI 组件有时略显奇怪，但在这种情况下，我能理解它的价值（因为该 NodeBB 帖子没有类似功能，我似乎只能通过调整 URL 才能回到首帖）。

如果您也曾从分页论坛迁移过来，用户是如何适应的？

---

<div class="post-metadata">

**Author:** ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)\
**Post date:** [2019年十一月29日 16:47 UTC](https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687/2 "2019-11-29T16:47:24Z")

</div>

如果你查看任何其他现代 Web 应用，你会发现它们并没有采用分页。一个流行的例子是名为 [Facebook.com](http://Facebook.com) 的社交网站。它非常受欢迎，而我从未见过有人抱怨那里的无限滚动功能。

要查看 Discourse 如何处理长篇话题，请访问 [What happens when a topic has over 1000 replies? - general - Discourse Demo](https://try.discourse.org/t/what-happens-when-a-topic-has-over-1000-replies/301)

---

<div class="post-metadata">

**Author:** ![polarathene](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/polarathene/32/144974_2.png) [@polarathene](https://meta.discourse.org/u/polarathene)\
**Post date:** [2019年十一月30日 03:48 UTC](https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687/3 "2019-11-30T03:48:51Z")

</div>

如果你使用 Facebook，互动的性质并不完全相同。我的意思是，有多少帖子下的回复仅仅是用户互相@或发布一些表情包/GIF 动图？

你也能看到一些带有讨论的帖子，但它们在一定程度上支持评论区的线程式讨论，而 Discourse 则不鼓励这种做法。Facebook 评论中的图片高度是固定的，你只能附加一张图片（要么是从链接嵌入，要么评论本身就是一张图片）。

我刚才链接的那个例子就不是这样。当你向上滚动时（因为你被链接到了该线程深处的某条帖子），图片加载会导致内容跳动，而你无需滚动。你刚读了一会儿帖子，它就因为图片加载而“消失”了，内容被往下推。你向下滚动想找回那条帖子，结果它又被新加载的图片再次推下去。这体验很糟糕。

至于信息流，它更像是一种无限滚动（评论往往是其中的子集，并根据某些指标排序，因为各个带有子线程的独立评论与其他评论之间没有时间上的关联），这又是无关的内容/帖子，更像是浏览主题。

> [@pfaffman](#):
>
> 要看看 Discourse 如何处理长主题，请查看 [当主题回复超过 1000 条时会发生什么？- 演示](https://try.discourse.org/t/what-happens-when-a-topic-has-over-1000-replies/301)

感谢分享链接。那个演示包含大量图片，而 Discourse 在处理时表现更好，因为它为加载中的图片设置了固定尺寸，因此内容不会反复强制更新布局。

我个人对缺乏分页并不太在意（我知道有些用户在从现有的分页论坛迁移到 Discourse 时会感到不满，例如 [暴雪论坛](https://us.forums.blizzard.com/en/wow/t/discourse-isnt-better-forum-software/82538)（顺便说一句，他们在自定义 Discourse 方面做得非常出色））。我也看到过 [这里的一个帖子提到了关于分页的问题](https://meta.discourse.org/t/unfortunately-i-had-to-pull-the-plug/117508)，比如它如何影响某人通过广告实现的盈利（第 82/89 楼）。不过，Discourse 有很多优点，其他替代方案在同等水平上很难与之竞争，所以让我们拭目以待。

---

<div class="post-metadata">

**Author:** ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)\
**Post date:** [2019年十一月30日 14:19 UTC](https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687/4 "2019-11-30T14:19:02Z")

</div>

> [@polarathene](#):
>
> 我链接的那个例子并非如此。当你向上滚动时（因为你被链接到了该主题中较靠后的帖子），图片的加载会导致内容跳动，而无需你滚动。你刚读了一会儿某个帖子，它就被加载中的图片挤下去了；你向下滚动想找回那个帖子，结果更多图片加载进来又把它推了下去。这种体验非常糟糕。

我在 Chrome 浏览器配合慢速网络环境下进行了测试，并未遇到此问题。在我看来，帖子似乎是在图片高度计算完成后才显示的……

我的用户在从 phpBB 迁移到 Discourse 后，并没有抱怨缺少分页功能。不过我们的社区规模较小，而且我们那些长主题（有些主题包含数千条帖子）的过往帖子并不值得重读（它们更像是日常琐事记录）。

关于分页和无限滚动的优缺点，我查阅过相关资料，在我看来，对于论坛而言，无限滚动的优点远多于缺点。  
我认为分页的主要问题在于：

1. 在每一页中，第一条帖子的可见度高于其他帖子，而最后一条帖子的可见度最低。有些分页系统通过将每页的最后一条帖子作为下一页的第一条帖子来避免这一问题。
2. 在某些论坛上，每个用户可以自行选择每页显示的帖子数量。这是一个令人烦恼的问题，因为当你从他人处打开一个分页链接（或来自搜索引擎的结果）时，你永远无法确定（或者可以确定）它是否会跳转到正确的页面。
3. 分页是一种人为打断讨论流程的方式，与讨论内容本身毫无关联。由于我的英语不够好，可能没解释清楚：sweat\_smile:

就我个人而言，我对 Discourse 的无限滚动功能没有任何抱怨。我们分享帖子链接的方式以及正确的滚动行为都运行良好。

我觉得大多数人关于缺少分页的抱怨，无非是“路径依赖”的结果。[path dependance](https://en.wikipedia.org/wiki/Path_dependence?oldformat=true)

---

<div class="post-metadata">

**Author:** ![polarathene](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/polarathene/32/144974_2.png) [@polarathene](https://meta.discourse.org/u/polarathene)\
**Post date:** [2019年十一月30日 15:39 UTC](https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687/5 "2019-11-30T15:39:12Z")

</div>

> [@Canapin](#):
>
> 我尝试使用 Chrome 和慢速网络连接，没有遇到这个问题。在我看来，帖子是在图片高度计算完成后才显示的……

只是为了确认一下，这指的是我链接的那个 NodeBB 论坛，对吧？而不是后来在这里分享的那个 Discourse 等效版本？Discourse 在无需重新计算高度/布局的情况下添加了帖子。而 NodeBB 会不断移动我的帖子：如果我向上滚动（滚动条）然后停下来阅读某个帖子，该帖子上方帖子中的图片加载后，会迫使正在阅读的帖子向下移动。在我的网络连接下（使用 Chrome），当我向下滚动寻找同一个帖子时，这种情况发生过几次。

---

<div class="post-metadata">

**Author:** ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)\
**Post date:** [2019年十一月30日 16:03 UTC](https://meta.discourse.org/t/for-those-instances-with-long-topics-how-has-lack-of-pagination-affected-the-experience/134687/6 "2019-11-30T16:03:04Z")

</div>

> [@polarathene](#):
>
> 澄清一下，这指的是我链接的 NodeBB 论坛，对吧？

是的，我在 NodeBB 上没有遇到你的问题。
