主题列表预览(TLP)

好的,没有紧急情况。:+1: 请根据优先级在您有时间时进行检查。同时,我将进行更多测试,如有任何问题将进行报告。

3 个赞

另外,我注意到在类别页面上,主题列表项与子类别的显示存在重叠,这可能会影响用户体验。

1 个赞

这可能是由于 TLP TC 或其他东西的 JS 错误造成的。

布局需要工作的 JS。如果有什么东西破坏了页面上的 JS,它可能会停止 TLP 的“渲染器”。

刷新页面时会发生什么?

您在控制台中看到错误了吗?我目前无法重现,例如:https://starzen.space/c/uncategorized/1

1 个赞

我成功复现了它(仍然启用了图块和摘要)。

是的,刷新后布局恢复正常,但只是一小段时间。顺便说一下,图块底部的空白似乎不正常。我在控制台中没有看到任何错误,只有一个“在 modifyClass 调用中添加 pluginId 键”的提醒。

再刷新几次后,布局又像第一张图片那样损坏了。

嗯,你链接中的类别似乎没有子类别。布局损坏只发生在类别页面有子类别列表时。

我也无法重现此问题,刚刚创建了一个子类别,导航到它,图块显示正常。

尝试删除所有其他 TC 和插件,找出是否有东西导致中断。

3 个赞

嘿 Robert

又发现一个小问题:每当 TLP tc 激活时,即使未在特定视图中启用它,类名为 category-and-tags 的 div 标签的宽度在常规主题列表中也会被挤压在一起。不过,我无法确定是哪个 CSS 导致了这个问题。

启用 TLP 时

禁用 TLP 时

1 个赞

我根据您之前的反馈进行了此项更改。
这是为了适应操作而特意设计的。这是一个权衡。当所有主流浏览器都支持容器查询后,我可以使其更加智能。Firefox 目前表现出色。

由于您尚未启用操作,它看起来确实更奇怪。

这是启用操作的示例:

如果您不介意标签的末尾与操作不在垂直对齐,可以采用不同的设计,但这将以另一种方式造成浪费。

如果不存在操作,我或许可以进行一些调整来减小操作的“列”。

说实话,对于移动设备来说,图块是最复杂的布局选项。

1 个赞

嘿 merefield。感谢您的详细解释。

在我的具体案例中,我仅启用了 TLP 来显示主题缩略图选择器(而所有其他设置均已禁用)。

如果有一种方法可以在不激活 TLP TC 的情况下显示缩略图选择器,我会选择它。因此,我提交了那个“bug”报告。由于 TLP TC 在没有任何活动设置的情况下处于活动状态,我没有预料到

如果这个“bug”不是关键问题,那么我可以提交一个功能请求,要求提供一个选项,可以通过插件选项激活缩略图选择器,而无需启用 TLP TC。这是否可行?

1 个赞

我已对其进行了调整,如果您不使用操作,将为您提供(相当多)更多空间:

请更新并试用一下。

4 个赞

罗伯特你好

感谢你快速修复,我真的很感激!它已经更接近预期的行为,但由于移动设备上的空间非常有限,我们希望最大限度地利用它。

关于此事的后续。这样的功能将消除上述问题。

1 个赞

TC 和插件的分离只是为了让一些没有插件功能的用户能够利用基本功能,并能非常快速地推出前端的更改。

我目前没有计划改变这种职责划分,并打算将所有前端代码保留在 TC 中。我的时间也非常有限。

3 个赞

抱歉,我在最近的重构中破坏了话题列表。现在已修复 https://github.com/paviliondev/discourse-tc-topic-list-previews/commit/f41d9de6bd30fb6a0eb17561bb9a4e18b2244862

3 个赞

@Kuro22 你解决这个问题了吗?你找到与其他组件/插件的冲突了吗,或者看到了什么错误?

1 个赞

您好,更新组件后我收到一个错误:

Your site may not work because theme / component Topic List Previews has errors. Disable it at..

我尝试禁用所有其他组件,也切换了不同的主题——但它没有消失。
至少它只在我登录时显示,除了警告之外,我没有注意到任何实际问题。

[details=“日志”]

Topic List Previews 主题/组件正在抛出错误:

initialize@https://mydomain.com/theme-javascripts/b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b44a9c3c1aecf9da1fde6508abfa890657ed0
1 个赞

这很可能是您的问题。

TLP 仅支持最新的 tests-passed(即现在是 2.9.0.beta10)。

我两天前更新了,没有任何问题。(更新:刚才又在另一个站点上执行了更新,也正常。)

恐怕您需要更新到最新版本才能再次使其正常工作。目前的问题是 Discourse 核心的 Ember 版本更新非常快,所以 TLP 也必须跟上。看起来现代 TLP 代码已不再适用于 Discourse 2.8.8。

如果您能找到导致问题的提交并希望提交一个 PR,我将接受一个版本固定:Introducing .discourse-compatibility: pinned plugin/theme versions for older Discourse versions

2 个赞

感谢您的回复!\n\n目前是否可以降级 TLP?

1 个赞

请看我上面的更新,我接受 PR 中的 pin,但您必须自己研究以查找导致中断的提交。

1 个赞

以我的技能来看,这更像是“不行” :slight_smile:
如果我一直这样等到更新,会遇到什么真正的问题吗?

1 个赞

我不能给你任何承诺,但该组件只会影响前端,所以相当无害。你必须彻底测试它——从那条消息来看,有些东西坏了,但我不知道是什么!可能有一些核心代码你可以深入研究,找出可能触发此消息的原因。

无论如何,你真的需要找到一种方法让自己进入 test-passed 轨道,否则你将一次又一次地遇到这个问题。

1 个赞

sidecar Plugin 似乎有一个小错误。

如果您观看此视频,您可能会注意到,在点击点赞/链接按钮时,主题预览会稍微向右移动。

1 个赞