错误: HTML 实体替换缺少分号(</>) — 切片实体在输入字词覆盖中呈现为垃圾文本
作者: priyanshu1976创建于 2026年8月26日更新于 2026年8月26日
您在打开一个问题前是否清除了缓存 ?
我清理了我的缓存
这个问题存在吗?
[x]我已经搜索了现有的公开和关闭的问题
登入时是否出现这个问题?
对
问题是否发生在登出时?
对
QQ 登入时, 问题是否以隐形模式发生 ?
对
### ### ### ### ### ### ### ### ### ### ### ?
对
发布细节
当前的行为
两个斑点用 HTML 实体取代 QQ / QQ , 但省去后缀分号, 生成与 `. slice ()' 发生严重相互作用的非标准引用 :
//前端/src/ts/测试/结果-字-高亮.ts:314-319 Wordel.innerHTML = 用户输入链 .取代(/\t/g," ") 替换 (/ </g, “ <”) // 无分号 替换 (/ >/g, “ >” ) // 无分号 .slice(0), "El.childElementCount " 二字;
//前端/src/ts/test/test-ui.ts:1405-1409 —同型.
因为切片发生 * 在* 替换后, 结束于 QQ 的输入会被切换为中实体( 如 QQl") , 然后将它变成文字垃圾文本而不是 QQ 。 当相邻的实体类文本存在于打入的字符串中时,遗留式的分号式实体也奇怪的是双解码.
• 预期行为
在切开前替换为适当的实体(或在切开后逃脱):
替换(/ </g,“ <”)
替换 (/ >/g, “ & gt; ”)理想的情况是,两个呼叫站点将共用一个逃生助手(例如,从utils/misc.ts:137-145'重新使用Misc.escapeHTML',这已经正确逃脱了)。
- 键入含有QQ的单词,使输入长度超过单词长度,从而
.slice ()'在所附实体内切入(例如abc<'与xyz'字相接)。 - 观察输入上方所显示的原始 " Q " 碎片,而不是 " Q " 字符。
环境
- 任何一个
- 浏览器:任何
- 通过 " Master " @ 91bd24bb8的来源审查发现
内容来源: monkeytypegame/monkeytype