74 votes

Comment ajouter dynamiquement un attribut dans VueJs

J'utilise vuejs et je veux savoir comment contrôler les entrées (ajouter un attribut désactivé si nécessaire). Existe-t-il un moyen d'ajouter dynamiquement un attribut dans vuejs? Sous mon composant Textfield :

     <template>
     <input type="text" placeholder="{{ placeholder }}" v-model="value">
    </template>
    <script>
    export default  {
      props: {
       disabled: {type: Boolean, default: false},
       placeholder: {type: String, default: ""},
       value: {twoWay: true, default: ""}
      }
     }
    </script>
 

Utilisation :

 <textfield placeholder="Name" value.sync="el.name" :disabled="true"></textfield>
 

75voto

Jeff Points 4911

Vous pouvez le lier à une variable en utilisant v-bind:disabled="foo" ou :disabled="foo" pour faire court:

 <textfield label="Name" value.sync="el.name" :disabled="myVar">
 

Ensuite, dans Vue, vous pouvez simplement définir this.myVar = true et cela désactivera l'entrée.

Modifier: ajoutez ceci à votre modèle:

 <template>
  <input type="text" :disabled="disabled" placeholder="{{ placeholder }}" v-model="value">
</template>
 

5voto

base une condition, nous pouvons définir ou modifier les attributs en vue

Veuillez vous référer au document officiel pour le même https://vuejs.org/v2/guide/syntax.html#Attributes

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X