Discourse版本升级导致DOM元素属性(aria-label)数据丢失

您好,

我们在 discourse 版本(2.3 - 2.6)之间自定义了默认的 discourse 站点。在上述版本中,我们应用了自定义 CSS 来隐藏主题页面页脚按钮中的回复按钮,这是基于 aria-label 元素属性的值。

在将 discourse 版本升级到 2.8.0.beta6 后,回复按钮 DOM 元素缺少 aria-label 属性。但是,其他按钮,如分享、书签、标记等,在主题页面页脚按钮中仍然具有 aria-label 属性。由于这种行为,我们遇到了问题。

升级到 2.8.0 版本之前:

升级到 2.8.0 版本之后:

discourse 版本 2.8.0.beta6 升级是否修改或忽略了页面 DOM 元素中的任何属性?

1 个赞

你说得对,似乎确实缺少了。

看起来 aria-label 的值是在这里计算的:discourse/register-topic-footer-button.js at 362c47ce6a87783808cb4417912a75250f003bf8 · discourse/discourse (github.com)

看起来这项工作才 6 天前?:

DEV: adds a new topic footer dropdown api by jjaffeux · Pull Request #14747 · discourse/discourse (github.com)

1 个赞

尽管回复按钮不是由此产生的,但它是一个独立的 {{d-button}}

https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/templates/components/topic-footer-buttons.hbs#L59

此更改来自此提交:

抱歉,我们没有理由在此处重新添加此 aria-label,基于 aria 标签进行样式设置不是一个好做法。

2 个赞

这是因为该值取决于区域设置吗?

是的,没错,那也很容易改变 :+1:

1 个赞

此主题在上次回复后 30 天自动关闭。不再允许回复。