我们最近对 core 和 this theme component 进行了一些改进,应该可以完全解决性能问题。所有徽章数据现在都将作为主帖载荷的一部分加载。 ![]()
请确保您运行的是最新版本的 Discourse core。如果更新后仍无法正常工作,建议您尝试删除并重新安装主题组件。
您能分享一个显示该问题的论坛链接吗?(如果您不方便公开分享,通过私信分享也可以)
同样的问题
是否可以允许用户选择他们想要显示的徽章?
目前使用此 TC、Yt.w 无法实现。但我喜欢这个想法。
您有插件替代方案,允许用户选择要显示的徽章。
它仍然有效,但存在弃用和其他需要调整的事项。
我稍后可以看看!
真的吗!?非常感谢 ![]()
抱歉久等了。
我创建了一个 PR:
如果您想立即测试,可以使用我的 fork:
git clone --branch fix-deprecations https://github.com/arkshine/discourse-post-badges-plugin
非常感谢!
我在最新的 Discourse 重建中收到了一些浏览器开发控制台中的警告:
[PLUGIN discourse-post-badges-plugin] 弃用通知:使用
registerWidgetShim已弃用,并将很快停止工作。受影响的 widgetShim:featured-badges。[弃用于 Discourse v3.5.0.beta8-dev] [弃用 ID:discourse.widgets-end-of-life] [信息:Upcoming EOL for the widget rendering system]
[PLUGIN discourse-post-badges-plugin] 弃用通知:
api.includePostAttributes已弃用。请改用api.addTrackedPostProperties。[弃用于 Discourse v3.5.0.beta1-dev] [弃用 ID:discourse.post-stream-widget-overrides] [信息:Upcoming post stream changes - How to prepare themes and plugins]
[PLUGIN discourse-post-badges-plugin] 弃用通知:“
poster-name”小部件已弃用,并且api.decorateWidget不再是受支持的覆盖。 [弃用于 Discourse v3.5.0.beta1-dev] [弃用 ID:discourse.post-stream-widget-overrides] [信息:Upcoming post stream changes - How to prepare themes and plugins]
您可以分享一下错误信息吗?谢谢。
client-error-handler.js:88 [THEME 7 'Post Badges'] TypeError: 无法读取未定义的属性(读取 'forEach')
at initialize-discourse-post-badges.gjs:124:35
at y (transformer.js:222:1)
at get additionalArticleClasses (index.js:49:1)
at eM (reviewable-status.js:96:1)
at snippet.js:62:1
at snippet.js:62:1
at X (video-placeholder.js:39:1)
at T (snippet.js:62:1)
at h.get (item.js:168:1)
at Array Iterator.next (<anonymous>)
at A.getValue (item.js:168:1)
at item.js:168:1
at snippet.js:62:1
at X (video-placeholder.js:39:1)
at T (snippet.js:62:1)
at eL (message-bus.js:159:1)
at eE.flush (message-bus.js:159:1)
at Object.evaluate (message-bus.js:159:1)
at Object.evaluate (message-bus.js:159:1)
at tq.evaluateSyscall (message-bus.js:159:1)
at tq.evaluateInner (message-bus.js:159:1)
at tq.evaluateOuter (message-bus.js:159:1)
at t1.next (message-bus.js:159:1)
at t1._execute (message-bus.js:159:1)
at t1.execute (message-bus.js:159:1)
at tW.handleException (message-bus.js:159:1)
at tJ.handleException (message-bus.js:159:1)
at t$.throw (message-bus.js:159:1)
at ek.evaluate (message-bus.js:159:1)
at t$._execute (message-bus.js:159:1)
at t$.execute (message-bus.js:159:1)
at tQ.rerender (message-bus.js:159:1)
at t6.render (bookmark.js:114:1)
at bookmark.js:114:1
at tA (message-bus.js:159:1)
at ia._renderRoots (bookmark.js:114:1)
at ia._renderRootsTransaction (bookmark.js:114:1)
at ia._revalidate (bookmark.js:114:1)
at invoke (number-field.js:11:1)
at m.flush (number-field.js:11:1)
at g.flush (number-field.js:11:1)
at q._end (number-field.js:11:1)
at number-field.js:11:1
f @ client-error-handler.js:88
感谢 @md-misko,这应该能解决问题:FIX: Correctly handle post with no badge info by davidtaylorhq · Pull Request #42 · discourse/discourse-post-badges · GitHub
这些警告现在应该已经解决了(通过 https://github.com/discourse/discourse-post-badges/commit/010b9c49269a736b6ac5f4ce1ffbaf596de6d1cb)
嗯,没有。我仍然在开发控制台中看到这个:
[PLUGIN discourse-post-badges-plugin] 弃用通知:使用
registerWidgetShim已弃用,并将很快停止工作。受影响的 widgetShim:featured-badges。[自 Discourse v3.5.0.beta8-dev 起弃用] [弃用 ID:discourse.widgets-end-of-life] [信息:Upcoming EOL for the widget rendering system]
[PLUGIN discourse-post-badges-plugin] 弃用通知:
api.includePostAttributes已弃用。请改用api.addTrackedPostProperties。[自 Discourse v3.5.0.beta1-dev 起弃用] [弃用 ID:discourse.post-stream-widget-overrides] [信息:Upcoming post stream changes - How to prepare themes and plugins]
[PLUGIN discourse-post-badges-plugin] 弃用通知:
poster-name小部件已弃用,并且api.decorateWidget不再是受支持的覆盖。 [自 Discourse v3.5.0.beta1-dev 起弃用] [弃用 ID:discourse.post-stream-widget-overrides] [信息:Upcoming post stream changes - How to prepare themes and plugins]
我刚刚升级/重建了 Discourse。
[PLUGIN discourse-post-badges-plugin]
看起来您正在使用基于此主题组件的 Pavillion 插件。您需要联系他们以获取更新,或者切换到此官方主题组件版本(自 Pavilion 分叉插件版本以来,该版本已变得更加高效)。
是的,情况就是这样。抱歉,我没注意到。
那么,您是否建议使用主题组件版本,因为 Pavillion 插件的优势已不复存在?
这两个插件彼此兼容吗?




