En fait, mon problème ne pouvait pas être résolu de la manière présentée ci-dessus :
- oui, le niveau de notification a bien été modifié, mais…
- il n’a pas été enregistré. Il fallait cliquer ailleurs pour l’enregistrer avec une autre action.
En recherchant intensivement des mots-clés aléatoires dans la base de code de GitHub, j’ai pu trouver une structure comme celle-ci :
{{d-button action=(action "up" wc) ...}}.
Après quelques tests, j’en suis arrivé à la conclusion que cela fonctionne ainsi :
- modèle :
{{d-button action=(action "nomdelaction" arg1 arg2) ...}}`. - JS :
api.modifyClass("composant:some-component", { actions: { nomdelaction(arg1, arg2, argA, argB) { console.log(arg1); console.log(arg2); console.log(argA); console.log(argB); } } })
Les premiers arguments arg1, arg2 des méthodes sont ceux fournis par le modèle. Les arguments restants argA, argB… peuvent être fournis par la spécificité du composant (par exemple, le bouton category-notifications-button renverra un entier en fonction du paramètre sur lequel l’utilisateur clique).
Je ne suis absolument pas certain que ce que j’écris soit correct, mais cela pourrait aider quelqu’un qui se pose la même question que moi.