Uncaught Reference Error: Excel не определен - PullRequest
0 голосов
/ 13 сентября 2018

Я использую «JavaScript API для плагинов Office» для создания файла Excel в моей программе HTML.

Однако при загрузке страницы возвращается сообщение об ошибке.

<head>
   <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
   <script src="https://appsforoffice.microsoft.com/lib/1/hosted/Office.js" type="text/javascript"></script>

  <script>
    Excel.run(function (context) {     
      console.log('Your code goes here.');
    }).catch(function (error) {
      console.log('error: ' + error);
   });
  </script>
<head>

Возвращает сообщение об ошибке «Uncaught ReferenceError: Excel не определен».

1 Ответ

0 голосов
/ 13 сентября 2018

Комментарий Сивкана верен.Когда надстройка загружается, функциональность API не доступна сразу (и часто даже не определяется в переменных JS), вам нужно подождать, пока не будет вызван Office.onReady (или его более старый эквивалент, Office.initialize).

В вашем случае это должно работать:

<head>
   <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js></script>
   <script src="https://appsforoffice.microsoft.com/lib/1/hosted/Office.js" type="text/javascript"></script>

   <script>
       Office.onReady(() => {
           Excel.run(function (context) {     
               console.log('Your code goes here.');
           }).catch(function (error) {
               console.log('error: ' + error);
           });
       });
   </script>
</head>
<body>
</body>
...