2016-08-31 3 views
12

Я использую vuejs, и я хочу знать, как иметь контроль над входами (при необходимости добавьте отключенный атрибут). Есть ли способ добавить динамический атрибут в vuejs? Ниже мой TextField компонента:Как добавить динамический атрибут в VueJs

<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> 

Использование:

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

ответ

17

Вы можете привязать его к переменной с помощью v-bind:disabled="foo" или :disabled="foo" для краткости:

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

Тогда в Vue вас может просто установить this.myVar = true, и он отключит вход.

Edit: добавьте в ваш шаблон:

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

Спасибо за ваш ответ. Как новичок в VueJs, можете ли вы, пожалуйста, помочь мне заставить его работать. (Код обновлен) –

+0

Ваш код в порядке, вам просто нужно передать переменную из вашего родительского компонента, который является истинным или ложным, в зависимости от того, хотите ли вы его отключить. Поэтому '' – Jeff

+0

см. Редактирование - это то, что связывает отключенный атрибут с полем ввода – Jeff

Смежные вопросы