我有一个依赖的模块Backbone.我有一个backbone.d.ts定义,但TypeScript似乎不想编译我的模块,除非我的
import Backbone = module("backbone")
Run Code Online (Sandbox Code Playgroud)
实际上指向有效的主干模块而不是定义文件.我正在使用AMD加载的模块,并为骨干网定义了一个requirejs垫片.
除了创建一个虚假的backbone.ts模块定义之外,还有解决方法吗?
更新:解决方案的副作用是此类代码不再有效,因为模块不再存在.它需要存在因为requirejs垫片.我所知道的唯一解决方法是拥有两个.d.ts文件.一个用于使用骨干作为导入但不包含该declare module位的文件.另一个使用/// <reference它确实包括declare module线.
/// <reference path="../dep/backbone/backbone.d.ts" />
interface IApi {
version: number;
Events: Backbone.Events;
}
Run Code Online (Sandbox Code Playgroud)