Как связать vue.js с gapi - PullRequest
       15

Как связать vue.js с gapi

0 голосов
/ 13 февраля 2019

Я пробовал слишком много вещей, и я не смог решить эту проблему.Я пытаюсь соединить vue.js с gapi, чтобы использовать Google Spreadsheet после этого.Проблема в том, что я думаю, что api.js в скрипте не загружается, я не знаю причину.Каждый раз, когда консоль говорит: «gapi не определен», я пытался поместить setTimeout в gapi.load и ничего.Если кто-то может мне помочь ..

<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.3.0/vue.min.js"></script>
<script src="https://apis.google.com/js/platform.js" async defer></script>
<script src="https://apis.google.com/js/platform.js"></script>
<script>
    import * as http from "http";
    import Vue from "vue";

    export default {
        data() {
            return {
                entries: []
            };
        },
        mounted() { 

             // Client ID and API key from the Developer Console
      var CLIENT_ID = 'AIzaSyBcN4pjE5yK9ZXphpfe7yJddrvYTxCUhYU';

      // Array of API discovery doc URLs for APIs used by the quickstart
      var DISCOVERY_DOCS = ["https://www.googleapis.com/discovery/v1/apis/sheets/v4/rest"];

      // Authorization scopes required by the API; multiple scopes can be
      // included, separated by spaces.
      var SCOPES = "https://www.googleapis.com/auth/spreadsheets.readonly";

        const gauthOption = {
        discoveryDocs: DISCOVERY_DOCS,
        clientId: CLIENT_ID,
        scope: SCOPES
        };

         gapi.load('client:auth2', gauthOption);

1 Ответ

0 голосов
/ 13 февраля 2019

Возможно, вам нужно подождать гэпы перед выполнением кода, который вы можете использовать в запросе параметра запроса onload, как показано ниже:

<script src="https://apis.google.com/js/platform.js?onload=onLoadCallback"  async defer></script>
<script>
window.onLoadCallback = function(){
  gapi.load('client:auth2', gauthOption);
}

...