doc.getCells(sheetIndex, {'min-row': 1, 'max-row': 1}, function (e, r) { if (e) { func(e, 'failed to load spreadsheet data'); return; } _.map(r, function (t, i) { keyMap[t.col] = t._value; }); doc.getCells(sheetIndex, {'min-row': 2}, function (e, r) { _.map(r, function (t, i) { if (_.isNil(datas[t.row])) datas[t.row] = {}; var data = datas[t.row]; data[keyMap[t.col]] = t._numericValue === undefined ? t._value : t._numericValue; }); func(null, _.without(datas, null)); }); })
handler: (request, reply) => { doc.getInfo((err, spreadsheetObject) => { // console.log(spreadsheetObject) }) doc.getCells(1, { 'min-row': 1, 'max-row': 1 }, (err, cells) => { // console.log(cells) }) doc.getRows(1, {}, (err, rows) => { // console.log(rows) const usersObj = rows.forEach((el) => { delete el._xml delete el.id delete el._links }) reply(rows) }) }
module.exports = function(data, callback) { var sheet = new googlespreadsheet('1cE49G1WVsi0q3_fJ-7rJq9SGXfWqnsVTHNawkXHJ1ho'); sheet.getCells(1, function(err, cells) { data.historicPlans = _(cells) .map(function(cell) { return cell.value.replace(/\s+/g, ' ').trim() }) .chunk(2) .tail() .map(function(row) { return _.zipObject(['address', 'url'], row) }) .value() callback(null, data) }) }