forms - 如何使用从 form.io 的表单生成器中的 api 获取的值加载数据网格组件?

标签 forms datagrid formbuilder form.io angular-formio

我正在探索 form.io 的 from-builder。我想调用一个API来获取数据。此 API 响应将是一个对象数组,其中每个对象都有一些属性和键值对。

因此,在这里我想创建一个已在 form.io 的表单生成器中可用的数据网格组件,并且该数据网格组件的列已根据响应属性进行设置。

例如:如果 API 的响应是一个对象数组,并且每个对象如下所示:

body : "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto" ,
id : 1 ,
title : "sunt aut facere repellat provident occaecati excepturi optio reprehenderit" ,
userId : 1

对于这种 API 响应,我使用构建器中的 form.io 通过拖放创建了一个空的数据网格组件。它将如下所示:

enter image description here

我尝试在数据选项卡下的数据网格组件的自定义值javascript函数字段中加载数据,如下所示:

enter image description here

但是我不知道如何创建新行并将列值分配给从 api 返回的值

我的预期输出可能如下所示:

enter image description here

请有人帮助我。

最佳答案

我通过以下代码片段实现了这一点。正如我所说,我在数据网格组件的客户默认值部分的 javascript 部分中使用了此代码片段,如下所示:

var gridData = [];
function loadData() {
  var apiUrl = "https://jsonplaceholder.typicode.com/posts";
  fetch(apiUrl)
    .then(response => response.json())
    .then(data => {
      data.forEach(function(row) {
        gridData.push({
          "id": row.id,
          "userId": row.userId,
          "title":row.title,
          "body": row.body
        });
      });
      return instance.setValue(gridData);
    })
}
loadData();

关于forms - 如何使用从 form.io 的表单生成器中的 api 获取的值加载数据网格组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75821883/

相关文章:

java - JFrame 提交按钮确认

HTML 电子邮件 - 按钮作为电子邮件中的表单

javascript - jquery验证后表单未提交

wpf - 无法从程序集 PresentationFramework 加载类型 'System.Windows.Controls.Primitives.MultiSelector'

css - GWT CSS DataGrid 隐藏按钮

javascript - Angular 2 : Ajax form data return null

PHP isset 和 javascript

c# - 绑定(bind)到数据网格的 ObservableCollection - 使用工厂方法

PHP Symfony Forms 如何访问嵌套对象中的属性

sql-server - MS 的数据库表单生成器