如何在宜搭自定义表单中获取普通表单子表单中的数据?

axin 2024-12-12 53人围观 ,发现0个评论 阿里云宜搭

在阿里云宜搭(Yida)中,自定义表单通常用于实现更复杂的业务逻辑。如果你需要在自定义表单中获取普通表单子表单中的数据,可以通过以下步骤实现:


1. 了解宜搭的数据结构

  • 普通表单和子表单的数据存储在宜搭的数据库中,通常以 JSON 格式存储。

  • 子表单的数据是嵌套在主表单数据中的,可以通过宜搭提供的 API 或脚本获取。


2. 获取表单数据的方法

宜搭提供了多种方式获取表单数据,以下是常用的方法:

方法 1:使用宜搭的 API

宜搭提供了 RESTful API 来获取表单数据。你可以通过 API 获取普通表单及其子表单的数据。

  1. 获取 Access Token

  2. 调用表单数据接口

    • 使用宜搭的表单数据接口获取表单数据。

    • 接口示例:

    • GET /v1/form/data/{formInstanceId}
    • 参考文档:宜搭表单数据 API

  3. 解析子表单数据

    • 表单数据以 JSON 格式返回,子表单数据通常嵌套在主表单数据中。

    • 示例 JSON 数据结构:

    • {
        "formData": {
          "mainField": "value",
          "subTable": [
            {
              "subField1": "value1",
              "subField2": "value2"
            },
            {
              "subField1": "value3",
              "subField2": "value4"
            }
          ]
        }
      }
    • 方法 2:使用宜搭的脚本

宜搭支持通过脚本获取表单数据,适用于自定义表单的场景。

  1. 编写脚本

    • 在宜搭的自定义表单中编写 JavaScript 脚本,调用宜搭的 API 获取表单数据。

    • 示例脚本:

    • // 获取表单实例 ID
      const formInstanceId = 'your-form-instance-id';
      
      // 调用宜搭 API 获取表单数据
      const response = await fetch(`/v1/form/data/${formInstanceId}`, {
        method: 'GET',
        headers: {
          'Authorization': 'Bearer your-access-token'
        }
      });
      
      const data = await response.json();
      
      // 解析子表单数据
      const subTableData = data.formData.subTable;
      console.log(subTableData);
    • 在自定义表单中使用数据

    • 将获取到的子表单数据绑定到自定义表单的控件中。


3. 注意事项

  • 权限控制:确保调用 API 的用户有权限访问目标表单数据。

  • 数据格式:子表单数据通常是数组形式,需要根据实际需求解析。

  • 性能优化:如果需要频繁获取表单数据,建议使用缓存机制(如 Redis)减少 API 调用次数。


4. 示例场景

假设你有一个普通表单,包含一个子表单,子表单中有两个字段:itemName 和 itemQuantity。你需要在自定义表单中获取这些数据并显示。

  1. 获取表单数据

    • 使用 API 或脚本获取表单数据。

    • 示例 JSON 数据:

    • {
        "formData": {
          "mainField": "value",
          "subTable": [
            {
              "itemName": "Product A",
              "itemQuantity": 10
            },
            {
              "itemName": "Product B",
              "itemQuantity": 5
            }
          ]
        }
      }
    • 在自定义表单中显示数据

    • 将 subTable 数据绑定到自定义表单的表格控件中。


通过以上方法,你可以在宜搭自定义表单中获取普通表单子表单中的数据,并根据业务需求进行处理和展示。


请关注微信公众号
微信二维码
不容错过
Powered By TOPYUN 云产品资讯