web-dev-qa-db-fra.com

Est-ce qu'un objet booléen Vue) peut être vrai par sa présence et faux par son absence?

Dans mon composant Vue, j'ai un prop booléen appelé "obj", défini comme suit:

obj: { Type:Boolean, default: false}

Je peux le régler sur true comme ceci:

<my-component :obj="true"></my-component>

Cependant, j'aimerais pouvoir le définir sur true comme ceci:

<my-component obj></my-component>

Je voudrais que la présence de l'accessoire signifie true et que son absence signifie false. Est-il possible de définir un accessoire qui fonctionne de cette manière dans un composant Vue?

22
Emanon

C'est le comportement d'un accessoire booléen dans tous les cas. Vous définissez simplement l'accessoire comme suit:

{
  props: {
    fast: Boolean
  }
  ...
}

Et par défaut, false. Lorsque vous spécifiez l'attribut dans le modèle suivant, il est défini sur true:

<my-foo fast/>  <!-- fast is true -->

démo

40
tony19