Voici mon code :
import { apiInitializer } from "discourse/lib/api";
import { iconNode } from "discourse-common/lib/icon-library";
import { tracked } from "@glimmer/tracking";
export default apiInitializer((api) => {
@tracked iconName = settings.category_lock_icon || 'lock'; // Retourne 'lock' par défaut si le paramètre n'est pas défini
@tracked lockIcon = iconNode(this.iconName);
Frustrant, la console du navigateur m’indique que ReferenceError: iconName is not defined. En regardant le fichier dans les outils de développement du navigateur, voici à quoi il ressemble :
iconName = settings.category_lock_icon || 'lock'; // Retourne 'lock' par défaut si le paramètre n'est pas défini
lockIcon = (0, _iconLibrary.iconNode)((void 0).iconName);
Ceci, comparé à un autre composant que j’ai créé et qui utilise des variables tracked (qui fonctionne) :
#buttonIcon = (() => (dt7948.i(this, "buttonIcon"), void 0))();
, où le code original est
@tracked buttonIcon = localStorage.getItem('buttonIcon') != null ? localStorage.getItem('buttonIcon') : "bug";
Est-ce que je fais quelque chose de mal ?