我使用angular-cli创建了一个新的Angular项目,然后通过npm安装Office TS定义,并将Office JS API CDN放入索引的标题中html的。但是,在我的main.ts中,当我调用Office.initialize = function(){};即使命名空间被TS识别,它也找不到名称'Office'。有人知道我在做什么错吗?谢谢!Angular Office加载项:“找不到名称'Office'”
我一直在这里以下页面提示: https://dev.office.com/docs/add-ins/develop/add-ins-with-angular2
如果你想重现我的方案和安装角度CLI:
ng new test
cd test
npm install –save-dev @types/office-js
然后打开你的项目目录,并转到SRC/index.html的。在标题中添加此CDN:
<script src="https://appsforoffice.microsoft.com/lib/1/hosted/Office.js" type="text/javascript"></script>
然后去为src/main.ts
,并改变它使应用程序不引导模块直至其初始化办公室:
Office.initialize = function(){
if (environment.production) {
enableProdMode();
}
platformBrowserDynamic().bootstrapModule(AppModule);
};
UPDATE
我能够用得到这个在我main.ts工作:
declare const Office: any;
Office.initialize = function() {
platformBrowserDynamic().bootstrapModule(AppModule);
};
但是,这只有在加载项在Office应用程序中被侧面加载时才有效。该模块似乎没有在浏览器中引导,只是说'正在加载...'。有没有办法让它加载到浏览器中进行调试?我关心的是这将如何影响调试以及量角器,业力和茉莉花的任何E2E或单元测试。
是否有关于如何使用这个工具,你可以点我的导游吗? – codex
更新了我的答案,并附有链接以帮助F12。 –