Browse Source

fix(订单表单): 修复表单配置中可选链操作符的使用

yz 1 week ago
parent
commit
210e5a8237
1 changed files with 8 additions and 8 deletions
  1. 8 8
      src/components/order-form/form-option.js

+ 8 - 8
src/components/order-form/form-option.js

@@ -269,7 +269,7 @@ export const orderFormOption = {
  * 根据编辑模式动态调整表单配置
  * @description 基于业务逻辑动态调整表单字段的显示和编辑状态
  * @param {boolean} [isEdit=false] - 是否为编辑模式
- * @returns {AvueFormOption<OrderFormModel>} 调整后的表单配置对象
+ * @returns {AvueFormOption} 调整后的表单配置对象
  * @throws {Error} 当配置对象结构异常时抛出错误
  * @example
  * // 获取新增模式的表单配置
@@ -281,7 +281,7 @@ export const orderFormOption = {
 export function getFormOption(isEdit = false) {
   try {
     // 深拷贝配置对象,避免修改原始配置
-    /** @type {AvueFormOption<OrderFormModel>} */
+    /** @type {AvueFormOption} */
     const option = JSON.parse(JSON.stringify(orderFormOption))
 
     if (isEdit) {
@@ -306,18 +306,18 @@ export function getFormOption(isEdit = false) {
  */
 function adjustFieldsForEditMode(option) {
   // 编辑模式下,订单编码不可编辑
-  const basicGroup = option.group.find(group => group.prop === 'basic')
+  const basicGroup = option?.group?.find(group => group.prop === 'basic')
   if (basicGroup) {
-    const orderCodeField = basicGroup.column.find(column => column.prop === 'orderCode')
+    const orderCodeField = basicGroup?.column?.find(column => column.prop === 'orderCode')
     if (orderCodeField) {
       orderCodeField.disabled = true
     }
   }
 
   // 编辑模式下显示订单状态字段
-  const otherGroup = option.group.find(group => group.prop === 'other')
+  const otherGroup = option?.group?.find(group => group.prop === 'other')
   if (otherGroup) {
-    const statusField = otherGroup.column.find(column => column.prop === 'status')
+    const statusField = otherGroup?.column?.find(column => column.prop === 'status')
     if (statusField) {
       statusField.display = true
     }
@@ -332,9 +332,9 @@ function adjustFieldsForEditMode(option) {
  */
 function adjustFieldsForCreateMode(option) {
   // 新增模式下,隐藏订单编码字段
-  const basicGroup = option.group.find(group => group.prop === 'basic')
+  const basicGroup = option?.group?.find(group => group.prop === 'basic')
   if (basicGroup) {
-    const orderCodeField = basicGroup.column.find(column => column.prop === 'orderCode')
+    const orderCodeField = basicGroup?.column?.find(column => column.prop === 'orderCode')
     if (orderCodeField) {
       orderCodeField.display = false
     }