目标效果如下:
dialog弹出框中增加两个item
<el-form-item label="维护方式" prop="oprType">
<el-select class="filter-item" v-model="form.oprType" @change="switchOprType" placeholder="请选择维护方式">
<el-option v-for="orTyp in orTypeOptions" :key="orTyp.id" :label="orTyp.labelDefault" :value="orTyp.value"> </el-option>
</el-select>
</el-form-item>
<el-form-item label="属性对象" prop="attrObj">
<el-input v-model="form.attrObj" v-if="OprTypeFlag == 'input'" placeholder="请录入需要的属性对象"></el-input>
<el-select class="filter-item" v-model="form.attrObj" v-if="OprTypeFlag == 'select'" placeholder="请录入需要的属性对象">
<el-option v-for="attr in dictOptions" :key="attr.code" :label="attr.name" :value="attr.code"> </el-option>
</el-select>
</el-form-item>
</el-form-item>
在data->return{}中定义一个全局变量
OprTypeFlag: 'default',
生成dialog时默认为文本框,created(){}方法中
this.OprTypeFlag = 'input';
在methods里面添加切换方法:
switchOprType() {
if (event.target.innerText === '下拉框') {
this.OprTypeFlag = 'select';
this.form.attrObj = ''
} else {
this.OprTypeFlag = 'input';
this.form.attrObj = ''
}
}