есть функция doSheet для работы с гугл таблицами
const { google } = require("googleapis");
//
function doSheet(file, sheetId, keyMass, fun) {
const auth = new google.auth.GoogleAuth({
keyFile: file,
scopes: "https://www.googleapis.com/auth/spreadsheets",
});
//
(async () => {
const client = await auth.getClient();
//
const googleSheets = google.sheets({ version: "v4", auth: client });
//
const spreadsheetId = sheetId;
//
const metaData = await googleSheets.spreadsheets.get({
auth,
spreadsheetId,
});
//
const data = {
auth,
spreadsheetId,
valueInputOption: "USER_ENTERED",
resource: {
values: keyMass.change,
},
}
//
if(keyMass.append) {
data['range'] = keyMass.append;
//
const append = await googleSheets.spreadsheets.values.append(data);
//
fun(append);
} else if(keyMass.values) {
data['range'] = keyMass.values;
//
delete data.valueInputOption; delete data.resource;
//
const values = await googleSheets.spreadsheets.values.get(data);
//
fun(values);
} else if(keyMass.update) {
data['range'] = keyMass.update;
//
const update = await googleSheets.spreadsheets.values.update(data);
//
fun(update);
}
})();
}
//
хочу воспользоваться параметром values для получения таблицы и сохранить его в массив для использования за пределами функции, как это сделать ?
doSheet('sheets.json', 'id', {values: 'list1'}, (data) => {
console.log(data.data.values)
})