{{d-button}} ou <DButton>? Telle est la question

Continuant la discussion de DButton ne prend plus en charge @action comme une chaîne. Veuillez refactoriser pour utiliser une action de fermeture à la place :

Cela m’a sauvé !

Ma question maintenant (outre comment ai-je mis 9 mois à faire cela) est de savoir si/quand utiliser {{d-button}} par rapport à <DButton>

2 « J'aime »

Le modèle Ember moderne consiste à utiliser la syntaxe « angle bracket » pour invoquer des composants. Ainsi, <DButton> est préférable.

Nous vérifions cela dans le cœur, mais nous ne l’avons pas encore étendu aux thèmes/plugins.

5 « J'aime »

Oh. Hourra. C’est ce que je pensais !

C’était particulièrement déroutant car le message d’erreur se plaignait de \u003cDButton\u003e alors que j’utilise {{d-button}}. Je vais m’occuper de corriger cela très bientôt.

Aha. Merci pour l’explication.

4 « J'aime »

Attendez. Nous avons donc abandonné @actionParam dans \u003cDButton\u003e et faisons ceci pour passer des éléments :

        @action={{fn this.addExtraVars this.extraVarsSmtp}}

mais dans \u003cNavItem\u003e nous avons toujours ceci pour passer des paramètres à une route

            @route="pfaffmanager.servers.show"
            @routeParam={{server.id}}
3 « J'aime »

C’est un cas particulier ici.

NavItem appelle LinkTo qui requiert le nom de la route vers laquelle lier (route) et la valeur pour remplir le segment dynamique (model, un ID ici) pour qu’ils soient séparés.

<LinkTo
    @route={{@route}}
    @model={{@routeParam}}
  >{{this.contents}}
<LinkTo>

Est-ce que cela a du sens ?

4 « J'aime »

C’est une explication intéressante et je la comprends, mais je ne dirais pas qu’elle a du sens. :slight_smile:

1 « J'aime »

C’est logique car il n’y a pas de fonction/action impliquée ici (et elle n’est pas nécessaire) dans NavItem. Vous voulez seulement passer des paramètres d’un composant à l’autre. Vous voyez ce que je veux dire ? Désolé, je suis tellement nul pour expliquer les choses. :sweat_smile:

3 « J'aime »

Ce sujet a été automatiquement fermé 30 jours après la dernière réponse. Les nouvelles réponses ne sont plus autorisées.