2014-11-16 34 views
7

我有一个环境.d.ts模块,直接依赖于不可变:如何将环境模块声明包含在另一个环境模块中?

error TS2435: Ambient external modules cannot be nested in other modules.

我怎么能有不可改变的:

/// <reference path="../node_modules/immutable/dist/immutable.d.ts" /> 
import I = require('immutable'); 

declare module 'morearty' { 
} 

但引用不可改变的,直接由与此错误的编译器禁止我的环境模块内的环境声明?我试图从另一个代理模块导入不可变的,但没有运气。

回答

14

Ambient external modules cannot be nested in other modules.

使用在文件的根的importexport创建文件模块。这解释了错误嵌套模块

修复:进口在文件的根目录:

/// <reference path="../node_modules/immutable/dist/immutable.d.ts" /> 

declare module 'morearty' { 
    import I = require('immutable'); 
} 
+1

很多感谢的,basarat!它只是工作! – bme

+0

非常感谢你!我有一个与自定义环境模块类似的问题,并拉出我的头发! – marvinhagemeister

相关问题