大家好,
我正在处理一些有时会获得很多标签的主题(其中许多是从 ICS feed 自动生成的)。在 Discourse UI 中,标签会不断换行,这使得主题列表变得很高,难以快速浏览。
我想做一些类似于在主题列表中显示类别的方式:
• 显示前几个(比如 5 个)
• 然后将剩余的折叠到一个“+X 更多”指示器后面
我尝试过的方法:
• CSS 可以隐藏一定数量之后的标签,甚至可以添加一个静态的“…”标记,例如:
/* 隐藏第 5 个之后的所以标签 */
.topic-list .discourse-tags a:nth-of-type(n+6) {
display: none;
}
/* 在第 5 个之后添加 ... */
.topic-list .discourse-tags a:nth-of-type(5)::after {
content: " …";
}
这对于隐藏有效,但 CSS 无法动态计算隐藏了多少个标签,因此我无法实现“+X 更多”。
我的问题是:
• 是否有内置方法可以限制每个主题显示的标签数量?
• 如果没有,是否有可以改编成主题组件的示例代码片段(也许来自类别渲染),为标签添加“+X 更多”的逻辑?
提前感谢!
