update DialogJustForm disabled status
This commit is contained in:
@@ -20,7 +20,7 @@
|
||||
<el-col v-for="(col, colIndex) in row" :key="colIndex" :span="24 / row.length">
|
||||
<!-- 通过多个 col === null 可以控制更灵活的 span 大小 -->
|
||||
<el-form-item v-if="col !== null" :label="col.label" :prop="col.prop" :rules="col.rules || null">
|
||||
<el-input v-if="col.input" v-model="dataForm[col.prop]" clearable :disabled="detailMode" v-bind="col.elparams" />
|
||||
<el-input v-if="col.input" v-model="dataForm[col.prop]" clearable :disabled="IsNotAvaliable(col)" v-bind="col.elparams" />
|
||||
<el-input v-if="col.forceDisabled && col.eraseOnSubmit" v-model="shadowDataForm[col.prop]" disabled v-bind="col.elparams" />
|
||||
<el-input v-if="col.forceDisabled && !col.eraseOnSubmit" v-model="dataForm[col.prop]" disabled v-bind="col.elparams" />
|
||||
<el-button type="" plain v-if="col.button" v-bind="col.elparams" style="width: 100%" @click="handleButtonClick(col)">{{
|
||||
@@ -30,7 +30,7 @@
|
||||
v-if="col.cascader"
|
||||
v-model="dataForm[col.prop]"
|
||||
:options="col.options"
|
||||
:disabled="detailMode"
|
||||
:disabled="IsNotAvaliable(col)"
|
||||
v-bind="col.elparams"
|
||||
></el-cascader>
|
||||
<el-select v-if="col.forceDisabledSelect" disabled v-model="dataForm[col.prop]" clearable v-bind="col.elparams">
|
||||
@@ -40,7 +40,7 @@
|
||||
v-if="col.select"
|
||||
v-model="dataForm[col.prop]"
|
||||
clearable
|
||||
:disabled="detailMode"
|
||||
:disabled="IsNotAvaliable(col)"
|
||||
v-bind="col.elparams"
|
||||
@change="handleSelectChange(col, $event)"
|
||||
>
|
||||
@@ -54,14 +54,14 @@
|
||||
@change="handleSwitchChange"
|
||||
:disabled="detailMode"
|
||||
/>
|
||||
<el-input v-if="col.textarea" type="textarea" v-model="dataForm[col.prop]" :disabled="detailMode" v-bind="col.elparams" />
|
||||
<el-date-picker v-if="col.datetime" v-model="dataForm[col.prop]" :disabled="detailMode" v-bind="col.elparams" />
|
||||
<el-input v-if="col.textarea" type="textarea" v-model="dataForm[col.prop]" :disabled="IsNotAvaliable(col)" v-bind="col.elparams" />
|
||||
<el-date-picker v-if="col.datetime" v-model="dataForm[col.prop]" :disabled="IsNotAvaliable(col)" v-bind="col.elparams" />
|
||||
<uploadBtn
|
||||
v-if="col.upload"
|
||||
:key="'upload_' + rowIndex + colIndex"
|
||||
:action="col.actionUrl"
|
||||
:file-list="dataForm['files']"
|
||||
:disabled="detailMode"
|
||||
:disabled="IsNotAvaliable(col)"
|
||||
v-bind="col.elparams"
|
||||
@update-file-list="handleFilelistUpdate"
|
||||
/>
|
||||
@@ -72,7 +72,7 @@
|
||||
v-model="dataForm[col.prop]"
|
||||
:options="col.quillConfig ?? defaultQuillConfig"
|
||||
style="margin-top: 42px"
|
||||
:disabled="detailMode"
|
||||
:disabled="IsNotAvaliable(col)"
|
||||
/>
|
||||
|
||||
<div class="" v-if="col.component" style="margin: 42px 0 0">
|
||||
@@ -384,6 +384,9 @@ export default {
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
IsNotAvaliable(col) {
|
||||
return this.detailMode || (col.disableOnEdit && this.editMode);
|
||||
},
|
||||
handleFilelistUpdate(newFilelist) {
|
||||
// TODO: 直接访问 .files 可能不太合适
|
||||
this.dataForm.files = newFilelist.map((file) => ({
|
||||
|
||||
Reference in New Issue
Block a user