gas*_*ard 4 typescript typescript-typings
我尝试创建以下d.ts文件,但创建的元素的类型是any:
declare module 'jszip' {
interface JSZip {
(): void
file ( name: string, data: string, opts: any ): void
folder ( name: string ): JSZip
}
const dummy: JSZip
export = dummy
}
Run Code Online (Sandbox Code Playgroud)
使用时:
import * as JSZip from 'jszip'
const zip = new JSZip ()
// zip type === any
Run Code Online (Sandbox Code Playgroud)
这样做的正确方法是什么?
您必须将模块声明为具有构造函数声明的接口.
declare module 'jszip' {
interface JSZipInterface {
(): void
file ( name: string, data: string, opts: any ): void
folder ( name: string ): JSZipInterface
}
interface JSZipConstructor {
new (): JSZipInterface
}
const module: JSZipConstructor
export = module
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
825 次 |
| 最近记录: |