【发布时间】:2017-08-30 00:21:43
【问题描述】:
我正在使用 Angular-CLI(Angular 4、Typescript、Webpack)创建一个带有 Office-js 的 Excel 插件。加载项工作正常,但由于 Microsoft 要求通过 CDN 获取 Office-js,我无法弄清楚如何将 Excel 导入应用程序。
Excel 对象正在加载到全局命名空间中,我可以使用declare var Excel: any 访问它。可悲的是,这种方法吹走了我的自动完成功能。其他第三方库允许import * as _ from 'lodash' 之类的东西,但是当文件通过 CDN 使用 index.html 中的脚本标签传递时,我不知道如何遵循这种模式。
我已经安装了 npm @types/office-js,当我删除 declare var Excel: any; 时,我的编辑器的自动完成功能可以按预期工作。不幸的是,此时打字稿编译器无法编译。如果我在文件顶部明确包含/// <reference types="office-js"/>,一切都会按预期进行,但我觉得这是一个笨拙的解决方案。
如何使用 import { Excel } from '@microsoft/office-js' 或 import * as Excel from 'office-js' 等语法导入 Excel?
【问题讨论】:
-
好像没有别的办法了?
-
嗨@Jolleyboy。我遇到了同样的问题。你解决了吗?昨天玩了
@microsoft/office-js,终于切换到CDN了。我相信它工作得很好,因为缓存左右。今天我遇到了同样的问题:Cannot find name 'Office'在打字 + CDN 的情况下。并失去与declare var Excel: any;的智能。那么解决办法呢?
标签: angular typescript angular-cli office-js