引入嵌套回复功能

在我的论坛上,我没有看到像示例截图中那样的“以平铺方式查看”选项。

对我来说,我需要将平铺视图设为全局默认,嵌套视图则作为用户可按需使用的可选视图,且平铺视图应始终立即可用。

只要有一个“以嵌套方式查看”的按钮,用户可以随时切换关闭,那就太好了。此外,如果允许用户将嵌套视图设为默认的个人设置,同时又能随时将单个主题或所有主题切换回平铺视图,那也非常理想。

如果没有足够的控制选项来切换视图模式,我只能坚持使用平铺视图。

2 个赞

我实际上已经完全移除了“平铺视图”选项。该选项最初是为了内部测试而保留的,以便我们轻松对比平铺视图与嵌套视图。由于我们发现保留它并无实际价值,因此现已将其移除。

3 个赞

我可能是在臆想,但当选中嵌套回复时,全屏浏览器下的宽度似乎变窄了:

这似乎与Modernize 基础主题无关,因为我已经禁用了该主题并重新启用过。

1 个赞

你并没有产生错觉。

宽度变大了,是因为时间线已被移除,占用了更多空间。

2 个赞

当然!这太有道理了!我只是说不出到底哪里变了!

2 个赞

终于支持了👏

Reddit 风格的界面不错,但我见过另一种设计,比如:

- A:...
    - B:...
    - C → B:...
    - D → C:...

在中国,几乎所有论坛和社交平台都采用这种模式。它还会折叠除第一条之外的所有嵌套回复。我认为这样可以避免分散注意力,或许可以作为一个选项。

1 个赞

可以通过将“嵌套回复最大深度”设置得更低(默认为 10)并启用“嵌套回复限制嵌套深度”来实现。请尝试一下。

3 个赞

你好,
我觉得这个功能非常棒,极大地提升了对话的可读性。
不过,也许是我漏掉了某个设置,我有两点反馈:

  • 当一条回复被审核时,高级别用户(如版主、管理员等)不再看到被审核(自动或手动)的消息呈灰色显示。它们以正常样式出现。将这些消息设为灰色显示,确实有助于快速识别。

  • 当我回复对话时,一个过滤器会隐藏回复的格式工具栏,同时也隐藏了例如附加图片的功能:

1 个赞

感谢提交报告。已提交一个 PR 来修复第一个问题。我相信第二个问题在您重新构建后应该已经解决了。

2 个赞

此主题应嵌套。

5 个赞

嘿,Lilly——完全随机的问题——你上面嵌套回复截图中使用的是哪个主题(主要是我喜欢它的美学风格,所以想做一些类似的事情)。

我认为它是基于 WCAG 调色板的原始设计。

请务必始终将其设为可选!

我刚刚合并了一个提交(链接),该提交更改了嵌套回复的默认值。具体变更如下(旧值在左,新值在右):

嵌套回复最大深度:10 → 3
嵌套回复限制嵌套深度:false → true

如果你喜欢之前的默认设置,只需部署并改回 10 和 false 即可 :slight_smile:

5 个赞

@markvanlan 你觉得把那些设置改为按分类配置怎么样?

我的想法是,大家可能希望针对不同用例以不同方式进行配置(例如,在偏向“帖子投票”的用例中,设置为 max: 1、cap: true;而在偏向自由形式的高流量评论场景中,设置为 max: 10、cap: false)。

你觉得这种情况你也可能会需要吗?还是说你更倾向于认为这里只需要站点级别的设置就够了?

4 个赞

我认为你的直觉完全正确,这最终会成为现实。用例非常多:投票、AMA(问我任何问题)、“乳制品日记风格”等等,只是举几个例子。这些用例中的每一个可能都需要为这些设置提供自己的值,此外还需要一些目前还不存在的新设置。

从技术上来说,为这些设置实现每类别配置是很容易的。我希望确保管理员能够以不令人不知所措的方式轻松配置这些设置。

在此之前,一个明显的问题是,目前没有办法将特定类别中的所有主题回填为嵌套形式(在UI中,当然可以通过直接访问服务器来实现)。当你为某个类别启用嵌套功能时,它只影响新主题,而不影响现有主题。

2 个赞

戴假发的哞哞叫的牛

2 个赞

起初,我觉得这个公告没有采用嵌套回复格式挺有趣的;后来才意识到你还没准备好重新格式化整个 News and Events > Announcements 分类。:slightly_smiling_face:

以下是我刚开始使用 Discourse 并了解扁平化模型时收集的一些资源:
Jeff 的经典观点:

一篇写得很好的外部说明:

为什么 Discourse 使用**“主题(Topics)”而不是“线程(Threads)”(2017 年的文章,早于 nested-replies 功能出现之前):


以及关于
线程(threads)**更深入的介绍:

我非常赞同 Kris @awesomerobot 对扁平化模型的辩护,认为它更符合 CDCK 社区建设和互动模式。 虽然我们可能会为某些管理分类启用嵌套回复——这在问题跟踪中很有用——但我会在普通讨论分类中谨慎采用这一功能。

最后,即使我最终启用了嵌套回复,我也会非常怀念无限滚动功能。我有一支带自由滚动滚轮的不错鼠标,但没有什么能比得上直接拖动无限滚动条滑块来快速浏览主题了。

4 个赞

审核角度来看,这里的一个挑战是我们的版主喜欢阅读主题中的每一篇帖子。在嵌套回复格式下,这似乎很难做到,因此提供一个可选的按时间顺序排列的扁平视图(可能仅限特定用户组?)仍然会很有用。

其他一些反馈:

  • 如果我折叠了一个回复链,希望下次重新打开该主题时它保持折叠状态
  • 如果自上次打开该主题以来的新回复能高亮显示,那就更好了
  • 我希望“X 条新回复”按钮始终可见,并像“排序方式”选择器那样固定在页面顶部,而不是只有当我滚动到页面最顶端时才显示。
7 个赞

目前我遇到的主要问题就是,这个功能仍然有太多 Bug,无法正常使用。当我滚动页面时,它会毫无理由地随机跳转到页面的不同位置。而且我也看到不少人反映,出于某种原因,启用此视图后,滚动(甚至打字)会出现严重的卡顿现象。(详见此处) 我在我的 M4 Pro MacBook Pro 上并没有注意到这个问题,我想我大概是太“精英主义”了吧。

我现在正在浏览我论坛上的一个测试主题,我最终确实注意到了这个功能的存在(以时间戳旁边的一个点为形式),但我认为这种提示太过隐蔽,而且更重要的是,在滚动时它消失得太快了。我希望能看到这个点一直保留,直到我完全离开该主题,稍后再返回时它才消失。

我在想,大家会对在返回主题时,底部悬浮一个“跳转到下一条未读评论”的按钮持什么看法?不过也许这样会让人困惑。


值得肯定的是,我非常喜欢它处理已删除评论的方式,我希望普通帖子也能采用类似的处理方式。我们收到过一些投诉,认为当前的系统在审核方面不够透明。


老实说,我最喜欢这个嵌套回复系统的一点是,它迫使人们正确地回复帖子。嵌套回复让这种做法……

……在我看来容易多了。目前至少在我的论坛上,我觉得人们有 70% 的时间会点击他们想要回复的那条帖子的回复按钮,否则即使他们是在回复特定的评论,也只会点击主题顶部的回复按钮。而在嵌套线程中,你基本上不会犯这种错误。我非常希望作为审核工具,我能有一个选项可以将某条帖子标记为对另一条帖子的回复。

此外,至少在我的论坛上,人们经常使用引用功能一次性回复多条帖子,这使得将帖子拆分到新主题中变得极其麻烦。

比如我这里的这条回复,如果我们想将这条回复拆分到关于 1) 主题中的新未读帖子、2) 已删除帖子与审核,以及 3) 嵌套线程相对于当前格式的优势 的新主题中,这将是一项挑战。如果在我们决定拆分之前,有一大堆人回复了这条帖子,情况会更糟。

有了嵌套回复,如果一条消息链变得足够长,我们可以毫无问题地将其拆分到拥有自己标题等属性的新主题中,并且“选择帖子及回复”按钮将始终按预期工作。


确实,我在我的论坛上看到的最常见的反馈是,嵌套回复使得实时跟进帖子变得几乎不可能:

3 个赞