我使用Angular-CLI(Angular 4,Typescript,Webpack)创建一个带有Office-js的Excel加载项。加载项工作正常,但由于微软要求通过CDN获取Office-js,我无法弄清楚如何将Excel导入应用程序。
Excel对象正在加载到全局命名空间中,我可以使用declare var Excel: any
访问它。可悲的是,这种方法吹走了我的自动完成功能。其他第三方库允许使用import * as _ from 'lodash'
之类的内容,但是当使用index.html中的脚本标记通过CDN传送文件时,我不知道如何遵循此模式。
我已经安装了@ types / office-js的npm,当我删除declare var Excel: any;
我的编辑器的自动完成生物按预期工作时。不幸的是,此时typescript编译器无法编译。如果我在文件顶部明确包含/// <reference types="office-js"/>
,那么事情就会按预期工作,但我觉得这是一个笨重的解决方案。
如何使用import { Excel } from '@microsoft/office-js'
或import * as Excel from 'office-js'
等语法导入Excel?
答案 0 :(得分:0)
我不知道是否与iziToast(它没有对Angular的本机支持)相同的问题,但我希望它能帮到你。所以,
而不是像'iziToast'那样导入像'import * as iziToast'这样的lib,我这样做了:
import { Injectable } from '@angular/core'
let iziToast = require('assets/js/iziToast.min.js')
@Injectable()
export class NotificationService {
sucess(message?: string) {
iziToast.success(......)
}
}
然后像魅力一样工作