问题是 @ember/string 已弃用,似乎是在 Ember 4.x 之后?我找不到 Ember 5.x 中的这个包……所以这只是一个权宜之计,直到 Discourse 快速迁移到 5.x(David 在这里暗示过:Upgrading Discourse to Ember 4 - #14 by david
@David 这里的正确做法是什么——使用原生 Javascript(就像我做的那样)?
问题是 @ember/string 已弃用,似乎是在 Ember 4.x 之后?我找不到 Ember 5.x 中的这个包……所以这只是一个权宜之计,直到 Discourse 快速迁移到 5.x(David 在这里暗示过:Upgrading Discourse to Ember 4 - #14 by david
@David 这里的正确做法是什么——使用原生 Javascript(就像我做的那样)?
感谢您的报告——我们没想到 JQuery 的更改会影响字符串原型扩展,因此我们正在对此进行研究 ![]()
据我所知,只有原型扩展已弃用。因此,像 \"mystring\".capitalize() 这样的操作将不允许。
但您仍然可以执行类似的操作:
import { capitalize } from "@ember/string";
capitalize("mystring");
因此,我建议您在 topic-list-previews 组件中这样做 ![]()
(更多之前/之后示例请参见 此处)
没关系,但对我来说也很意外 ![]()
我查看了 all-the-themes 和 all-the-plugins,只有少数几个公共插件需要修复。我在这里提交了 PR:(抄送 @merefield @angus)
Godfrey 帮我们深入研究了 JQuery commit 触发此问题的原因,他的发现都在 这个 PR 中。因此,我们理论上可以恢复此功能,但这涉及到对上游依赖项应用补丁,这并非理想方案。
考虑到复杂性,以及我们几个月后无论如何都会移除它们,我认为现在直接彻底移除是更合理的。我在这个 PR 中正式提出了这一点:
如果您有任何疑问/疑虑,请告知。
谢谢 David。我同意这个策略。您提供 PR 很贴心。 ![]()