这个代码做不到使得在修改业务收费类型时业务子类型的disabled属性更改为false修改
时间: 2024-10-23 17:19:21 浏览: 7
根据提供的代码,当修改 `configOrderMainType`(业务收费类型)时,确实会调用 `getConfigOrderSubTypeList` 方法,并且该方法内部会调用 `updateConfigOrderSubTypeDisabled` 方法来启用 `configOrderSubType` 下拉框。然而,如果 `updateConfigOrderSubTypeDisabled` 方法没有正确地启用 `configOrderSubType` 下拉框,可能是因为以下原因:
1. **方法未被正确调用**:确保 `getConfigOrderSubTypeList` 和 `updateConfigOrderSubTypeDisabled` 方法都被正确调用了。
2. **下拉框未找到**:确保 `formConfig` 中存在 `configOrderSubType` 这个字段,并且其 `model` 值为 `'configOrderSubType'`。
以下是相关的代码片段和检查点:
### 相关代码片段
#### `getConfigOrderSubTypeList` 方法
```javascript
getConfigOrderSubTypeList() {
if (this.queryParam.configOrderMainType) {
getAction('/web/bizTransactionOrder/getOrderSubType', { configOrderMainType: this.queryParam.configOrderMainType }).then((res) => {
if (res.code == 200) {
this.configOrderSubTypeList = res.result;
this.updateConfigOrderSubTypeDisabled();
}
});
} else {
this.$message.warning('请选择业务类型!');
}
}
```
#### `updateConfigOrderSubTypeDisabled` 方法
```javascript
updateConfigOrderSubTypeDisabled() {
const businessSubTypeItem = this.formConfig.find((item) => item.model === 'configOrderSubType');
if (businessSubTypeItem) {
businessSubTypeItem.disabled = false;
}
}
```
### 检查点
1. **确保 `formConfig` 中有 `configOrderSubType` 字段**
```javascript
formConfig: [
// ...其他配置项...
{
label: '业务子类型',
type: 'select',
model: 'configOrderSubType',
props: { placeholder: '请选择业务子类型' },
colSpan: { xl: 6, lg: 7, md: 8, sm: 24 },
isDate: false,
disabled: true
},
// ...其他配置项...
],
```
2. **确保 `getConfigOrderSubTypeList` 被正确调用**
```javascript
watch: {
'queryParam.configOrderMainType': {
handler(newVal) {
if (newVal) {
this.getConfigOrderSubTypeList();
} else {
const businessSubTypeItem = this.formConfig.find((item) => item.model === 'configOrderSubType');
if (businessSubTypeItem) {
businessSubTypeItem.disabled = true;
}
}
},
deep: true
}
}
```
3. **调试信息**
在 `updateConfigOrderSubTypeDisabled` 方法中添加调试信息,确保方法被执行并且找到了 `configOrderSubType` 字段。
```javascript
updateConfigOrderSubTypeDisabled() {
const businessSubTypeItem = this.formConfig.find((item) => item.model === 'configOrderSubType');
if (businessSubTypeItem) {
console.log('Enabling configOrderSubType:', businessSubTypeItem);
businessSubTypeItem.disabled = false;
} else {
console.error('configOrderSubType not found in formConfig');
}
}
```
通过以上步骤,可以确保在修改 `configOrderMainType` 时,`configOrderSubType` 的 `disabled` 属性会被正确地设置为 `false`。
阅读全文