Функция Google Sheet Api возвращает неопределенное значение в nodejs - PullRequest
0 голосов
/ 07 июня 2018
function changeData(auth,sheetId) {
  var sheets = google.sheets('v4');
  sheets.spreadsheets.values.update({
    auth: auth,
    spreadsheetId: sheetId,
    range: 'Sheet1!D6', 
    valueInputOption: "USER_ENTERED",
    resource: {
      values: [ ["abc"] ]
    }
  }, (err, response) => {
    if (err) {
      console.log('The API returned an error: ' + err);
      return;
    } else {
        console.log("Appended");
    }
  });
}

Я могу заставить вышеупомянутую функцию работать, и она отлично меняет значение, но нижеприведенная функция не возвращает значение и говорит, что получено 0 строк.что я делаю не так?

function read(auth,sheet_id)
    {
      var sheets = google.sheets('v4');
        sheets.spreadsheets.values.get({
        auth: auth,
        spreadsheetId: sheet_id,
        range: 'Sheet1!D6'
      }, function(err, result) {
        if(err) {
          // Handle error
          console.log(err);
        } else {
          var numRows = result.values ? result.values.length : 0;
          console.log('%d rows retrieved.', numRows);
        }
      });
    }

1 Ответ

0 голосов
/ 07 июня 2018

Если вы используете googleapis после версии v26.0.1 (сейчас это 32.0.0.), В вашем скрипте вы можете получить данные с помощью result.data.Так как насчет следующей модификации?

От:

var numRows = result.values ? result.values.length : 0;

До:

var numRows = result.data.values ? result.data.values.length : 0;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...