如何在Js中将数据从记录导出到Airtable请求中的json中

时间:2019-09-06 16:43:47

标签: javascript airtable

我正在尝试将Airtable记录的结果导出到json文件中。

我在codeandboxio中使用了react-js env。

我编写了一个检索所有记录的函数,但是我只能用console.log记录它们的值。

function loadGeneralItems(table) { 
var recList = []
    base(table).select().all()
    .then(
       function (records)  { 
        for (let i=0; i< records.length; i++)
       recList.push(records[i]._rawJson.fields) 
      // console.log(recList) // outputs ([Object, ...])
      }); 
   // return recList // returns nothing         
}

我想返回recList并将其解析为json对象。

1 个答案:

答案 0 :(得分:0)

解决方案是将功能转换为异步。

功能如下:

var loadGeneralItems = async function loadGeneralItems(table) {
var recList = []
    await base(table).select().all()
    .then(
       (records) => {
        for (let i=0; i< records.length; i++)

       recList.push(records[i]._rawJson.fields)})

    .catch(function () {
      console.log("Promise Rejected");
});
      return recList
}

这是电话:

app.get('/', function (req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});

  data = loadGeneralItems("Works")

  var dataPromise = Promise.resolve(data);
  dataPromise.then(function(jsonData) {
  res.write(JSON.stringify(jsonData));

  });