Arquitectura de TC/Plugin: ¿deberíamos tener más control sobre las clases?

Recientemente trasladé un pequeño componente a .gjs en el Plugin de Ubicaciones. Añade una forma alternativa de Ubicación al sitio web y al outlet de ubicaciones en el perfil del usuario. Al mismo tiempo, oculta la información de ubicación redundante que es reemplazada por el código del plugin.

Reevalué el valor del código que se había escrito anteriormente frente a los estándares modernos.

Ahora bien, usar los outlets de plugins está muy bien, pero ¿deberíamos también tener la capacidad de influir en la clase principal del div contenedor encima del outlet?

Porque actualmente, en este caso, tengo que manipular el DOM para ocultar información redundante de su hermano:

Preferiría hacer ese cambio con una modificación explícita de un componente que con manipulación del DOM.

Quizás me perdí algo aquí.

1 me gusta

¿Podrías esbozar cómo te imaginas que funcionaría una API como esta en el lado del núcleo y los complementos/temas?

Algo similar que tenemos es la ayuda {{body-class \"blah\"}}. Si la pones en cualquier outlet, aplicará la clase “blah” al <body>.

4 Me gusta

Otra idea es usar un selector CSS más sofisticado. Por ejemplo, todos los navegadores de destino de Discourse ahora admiten :has()

(pero es importante considerar el rendimiento al usarlo)

2 Me gusta

Ah, así que me he perdido un truco :sweat_smile:

Sí, prefiero eso a la opción has.

Oh, eso podría servirme en este caso, ¡muy útil, déjame intentarlo!

4 Me gusta

FYI, eso parece haber funcionado muy bien:

¡muchas gracias David!

1 me gusta

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