Outlook插件不适用于从GitHub下载的脱机office.js

kus*_*hav 6 javascript office-js outlook-web-addins

office.js当互联网被阻止时,使用从GitHub下载的脱机库下载的Outlook加载项不起作用。Office.js库在本地服务器上托管。

<script type="text/javascript" src="/node_modules/@microsoft/office-js/dist/office.js"></script>
Run Code Online (Sandbox Code Playgroud)

Outlook客户端版本:16.0.4738.1000 32-bit
GitHub office-js库版本:1.1.11

访问加载项后,将在弹出窗口中提示错误消息。

Error: Object doesn't support property or method 'registerEnum'   
URL:
https://localhost/node_modules/@microsoft/office-js/dist/outlook-15.04.js
Run Code Online (Sandbox Code Playgroud)

Error: Unable to get property 'read' of undefined or null reference   
URL:
https://localhost/node_modules/@microsoft/office-js/dist/o15apptofilemappingtable.js
Run Code Online (Sandbox Code Playgroud)

分析网络调用表明,该库在内部调用其他联机库。这样的图书馆之一是https://ajax.aspnetcdn.com/ajax/3.5/MicrosoftAjax.js

有什么方法可以将该库脱机用于阻止Internet访问的部署?

注意:启用Internet后,使用此库的Outlook加载项可以正常工作。

Mav*_*tes 1

对于您是否可以在本地模式下使用这些加载项,简短的回答是可以。某些 Outlook 加载项 API 可能会调用 EWS API,这在无互联网模式下会失败,但有些功能可以工作。不过,我不相信这是一个好主意,因为与驻留在服务器上的应用程序相比,您无法以类似的方式真正开发、分发、更新应用程序。

关于为什么您的加载项在本地失败,请参阅此问题:MicrosoftAjax.js is not returned successfully inside Office application

请递归dist复制该文件夹的所有内容。