2014-11-16 111 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

相關問題