基本上,我正在使用@types/flickity
添加Flickity的定义,但是当我尝试在自己的脚本中使用FlickityOptions
时,会出现错误,提示Cannot find name 'FlickityOptions'
。
我尝试在typeRoots
中添加tsconfig.json
并通过files
手动添加文件,但仍然出现错误,也尝试使用/// <reference
。
有什么想法吗?
答案 0 :(得分:0)
FlickityOptions
不是从@types/flickity
导出的,因为声明文件sets export = Flickity
和FlickityOptions
在导出的命名空间之外。考虑将FlickityOptions
导出到filing an issue against DefinitelyTyped。解决方法是,可以从FlickityOptions
构造函数中提取Flickity
类型:
import Flickity = require("flickity");
type FlickityOptions =
typeof Flickity extends {new(selector: string | Element, options?: infer FO): Flickity} ? FO : never;
(与this answer比较。)