TC/插件架构:我们是否应该对类拥有更多控制权?

我最近将一个小的组件移到了 Locations Plugin 的 .gjs 上。它为网站和用户配置文件中的位置 outlet 添加了另一种形式的位置。同时,它隐藏了被插件代码取代的冗余位置信息。

我根据现代标准重新评估了之前编写的代码的价值。

现在,使用插件 outlet 固然很好,但我们是否也应该能够影响 outlet 上方包装 div 的父类?

因为目前,在这种情况下,我不得不操作 DOM 来隐藏其同级元素的冗余信息:

我更希望通过显式修改组件而不是通过 DOM 操作来完成这个更改?

也许我在这里错过了什么。

1 个赞

您能大致勾勒一下您设想的类似 API 在核心和插件/主题方面是如何工作的吗?

我们有一个类似的东西是 {{body-class \"blah\"}} 助手。如果您将其放在任何出口中,它都会将“blah”类应用于 <body>

4 个赞

另一种方法是使用更复杂的 CSS 选择器。例如,Discourse 支持的所有目标浏览器现在都支持 :has()

(但使用它时考虑性能很重要)

2 个赞

啊,所以我漏掉了一个技巧 :sweat_smile:

是的,我更喜欢那个而不是 has 选项。

哦,这可能对我有帮助,非常有帮助,让我试试吧!

4 个赞

FYI,这似乎效果很好:

非常感谢 David!

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.