正如this answer建议的那样,我想稍微修改office.js
。
所以我将https://appsforoffice.microsoft.com/lib/1/hosted/office.js
的内容复制到了本地,以便https://localhost:3000/static/office.js
能够很好地展示内容。
然后,我制作了一个非常简单的文件test.html
:
<html>
<head>
<!--<script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>-->
<script type="text/javascript" src="https://localhost:3000/static/office.js"></script>
</head>
<body>
haha
</body>
</html>
在浏览器中使用远程https://localhost:3000/static/test.html
加载office.js
会显示Warning: Office.js is loaded outside of Office client
o15apptofilemappingtable.js:11
,并将其加载到Office加载项中效果很好。
但是,在浏览器中将https://localhost:3000/static/test.html
加载到本地office.js
会显示Uncaught SyntaxError: Unexpected token <
o15apptofilemappingtable.js:1
,并将其加载到Office加载项中会出现错误Add-in Error Something went wrong and we couldn't start this add-in. Please try again later or contact your system administrator
。
所以有人知道这里有什么问题吗?是否可以制作我们自己的本地版office.js
?
答案 0 :(得分:0)
在链接问题中查看我的答案。基本上,不,你不应该制作自己的本地副本&#34; office.js&#34;。但是如果你确实想要一个本地拷贝 - 我们已经在NuGet上提供了这个拷贝,最近又提到了NPM(https://www.npmjs.com/package/@microsoft/office-js) - 你需要该目录中的所有相关文件,而不仅仅是Office.js本身。
有关组成Office.js的文件和文件夹的列表,请参阅https://unpkg.com/@microsoft/office-js@1.1.1/dist/。并非所有(事实上,不是大多数)都在任何给定的会话中使用,但您确实需要整个文件集,因为不同的文件会在不同情况下加载。