大家好,
刚更新到 2.6.0.beta2,在确认一切运行正常后,我意识到无法编辑主题的 CSS/HTML,其行为与此类似。主要区别在于,我能看到我自定义的 CSS/HTML 代码文本,但无法编辑,它只是纯文本。
复现步骤:
- 进入管理面板
- 点击“自定义”标签/按钮
- 选择一个主题
- 点击“编辑 CSS/HTML
大家好,
刚更新到 2.6.0.beta2,在确认一切运行正常后,我意识到无法编辑主题的 CSS/HTML,其行为与此类似。主要区别在于,我能看到我自定义的 CSS/HTML 代码文本,但无法编辑,它只是纯文本。
这很可能与我们最近对 CSS/HTML 编辑器的更新有关……旧版编辑器仍缓存于您的浏览器中,从而导致问题。为确认这一点,请访问编辑器并打开浏览器控制台,您会看到一条提及 loadWorkerFromBlob 的错误信息。
一种可能有效的解决方法是直接访问 yourcommunity.example.com/javascripts/ace/ace.js,然后对页面执行强制刷新。
你好 @awesomerobot!
非常感谢你的回复。
是的,我确实在控制台中看到了这些错误!
在此期间,我尝试了系统中的各种操作,结果发现我也无法发帖。之前因为还没有需要写任何东西,所以没测试过这个功能,但出于好奇试了一下:当你尝试回复或创建新帖子时,编辑器弹窗会出现,但没有文本输入框。标题输入框会出现,你可以输入内容;像类别选择器之类的下拉菜单也能加载,但无法使用;下方也没有任何输入框。
此外,在主题编辑器和尝试发帖时,我都会遇到这个错误:property 'authorized_extensions' of undefined
最奇怪的是:这似乎只影响管理员/版主账号,普通用户可以正常发帖。这对你来说是否说得通?还是说我得扔掉所有电子设备了?![]()
小更新
我在其他设备上尝试过,现在真的有点困惑了:在某些设备上,Firefox 可以正常显示输入框但 Chrome 不行,反之亦然。在某些设备上,版主可以正常发帖但管理员不行,反之亦然。
我清除了缓存和 Cookie,也尝试了无痕模式,但行为没有任何改变。
为了排除所有可能性,我将尝试“极端”方法:卸载所有浏览器并重新安装,从头开始测试。因为这种行为告诉我,问题不一定出在 Discourse 本身,而是某种与设备和账号相关的因素导致的。
另外,我忘记提到一点:我确实遵循了你的建议,做了以下操作:
我的理解是访问该地址后,在清除所有内容后按 CTRL+F5 或 F5 进行强制刷新,但问题依然存在。
再次更新
不行,尝试了卸载和重新安装,仍然无效。即使在 Edge 浏览器(新旧版本)上也是如此,没有成功。
看起来普通用户并没有遇到这个问题,因为他们的活动流程正常(如果他们有这个问题,我其实也不会知道 :P),但管理员和版主确实遇到了这个问题。我无法定位具体问题,控制台中唯一的反馈是:
Chrome: Uncaught TypeError: Cannot read property 'authorized_extensions' of undefined
FireFox: Uncaught TypeError: t is undefined
再次更新
只是发个帖说,现在突然之间,在没有任何更改(无论是我的电脑还是服务器)的情况下,我可以编辑主题了,输入框也出现了。
但是,我仍然无法在自己的网站上发帖,因为输入框没有出现,如上所述。我对这种情况感到困惑。我会更新标题,因为现在问题仅限于文本输入框(除非主题编辑框也突然停止工作)。
新帖子只是为了说明:如果我将某个有该 bug 的版主用户的“版主状态”移除,刷新页面后他们就能正常发帖,文本框也会正常显示。这证实了该问题仅出现在版主和管理员身上。
不过,我一直在排查我的插件,也尝试了 ?safe_mode=only_official 模式,但情况没有变化,问题仍然只出现在版主/管理员身上。
现在,有趣的部分来了:在写上面这些内容时,我突然想到,“唯一的不同在于管理员/版主,但你们在 Meta 上没有遇到这个问题,所以这一定是我的某个特定设置导致的”。于是我推测,尽管“安全模式”会禁用插件,但并不会禁用主题组件。
于是我就试了一下,结果证实了我的猜测:导致该问题的正是 Restrict Uploads 主题组件(讽刺的是,版主/管理员 可以 上传文件,因此他们的工具栏不受影响,但不知为何该组件并未正常加载)。
总结如下:
关于原始问题:似乎与 @awesomerobot 描述的行为有关,因为该问题“随着时间推移”自行解决了(尽管并非立即通过执行那些命令解决,这一点我需要说明)。
我还遇到了另一个关于文本框的问题,该问题与 @tshenry 开发的 Restrict Uploads 主题组件 有关。
在我将这个问题发布到该主题组件的讨论帖之前,能否有人帮忙确认一下?
Chrome:Uncaught TypeError: Cannot read property 'authorized_extensions' of undefined
FireFox:Uncaught TypeError: t is undefined