Vue.js Vue js更改外部组件的道具
我使用library element.io,当选择值为“a”时,我想将输入的“disabled”prop更改为true 选择:Vue.js Vue js更改外部组件的道具,vue.js,vuejs2,Vue.js,Vuejs2,我使用library element.io,当选择值为“a”时,我想将输入的“disabled”prop更改为true 选择: <el-select v-model="selected_devise" slot="append" placeholder="Devise"> <el-option v-for="item in devises" :key="item.value" :label="item.label"
<el-select v-model="selected_devise" slot="append" placeholder="Devise">
<el-option
v-for="item in devises"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
当我选择“b”时,我想将输入设置为禁用,为此,我必须编辑道具:
<el-input type="text" ref="montant" v-model="montant" placeholder="Saisissez le montant"></el-input>
当我尝试使用此选项时。$refs.montant。$props.disabled=true;我得到:
避免直接改变道具,因为每当父组件重新渲染时,该值将被覆盖。相反,使用基于道具值的数据或计算属性。道具变异:“禁用”
谢谢你的帮助大概是
<el-input
type="text"
ref="montant"
v-model="montant"
placeholder="Saisissez le montant"
:disabled="selected_devise=='b'"
></el-input>
(假设el input和el select是同一组件的子组件)不应直接在子组件中变异道具。相反,您应该使用
this.$emit
在子组件中发出一个自定义事件,并让父组件侦听该事件并修改道具。好的,我看到了“想法”,能告诉我细节吗?因为我使用elementUI(外部库组件)
<el-input
type="text"
ref="montant"
v-model="montant"
placeholder="Saisissez le montant"
:disabled="selected_devise=='b'"
></el-input>