Est-ce la bonne façon de créer un composant de thème ?

Bien que cette façon de faire soit techniquement possible, ce n’est pas l’approche idéale.

Au lieu d’utiliser des balises script et $(document).ready de jQuery, il serait préférable de travailler correctement avec le système de rendu d’Ember.

Pour commencer, il serait bon de créer un dépôt de composants de thème avec une structure de dossiers appropriée pour votre composant de thème. Jetez un œil à l’outil discourse_theme CLI car il générera cette structure pour vous et vous permettra de développer facilement le composant. (Alternativement, il existe également le squelette de thème si vous n’avez besoin que de la structure et pas des autres fonctionnalités de la CLI de thème).

À partir de là, j’utiliserais les outils que Discourse met en place pour l’extensibilité, tels que apiInitializers, l’pluginAPI (https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/lib/plugin-api.gjs), les sorties de plugin, etc., pour réaliser ce que vous essayez de faire.

La meilleure façon d’en apprendre davantage sur ces choses est de parcourir les Guides développeur ici sur Meta (en particulier les sections thème/composant de thème). De plus, je parcourrais la catégorie Theme component et trouverais leurs dépôts GitHub. Examiner leur code et la façon dont ils réalisent les choses vous aidera également.

J’espère que cela vous aidera !

7 « J'aime »