2015-04-28 77 views
1

我準備這兩個文件:引用的打字稿外部模塊 - 錯誤TS2304:找不到名稱「一般」

1日一個是general.d.ts文件

interface IgeneralStatic { 
    General: { 
     Langs: any; 
    }; 
} 

declare var general: IgeneralStatic; 

declare module 'general' { 
    export = general; 
} 

:第二個就是什麼。當我試圖編譯它我得到這個錯誤

/// <reference path="general.d.ts" /> 

import general = require('general'); 

export class SpecificLangs extends general.General.Langs 
    ... 
} 

在那裏我試圖導入文件別名TS文件0
error TS2304: Cannot find name 'general' 

這個原因,我不知道我的模塊在哪裏,我不能導入它的打字稿用法。它在requirejs方面作爲包裝解決。所以沒有辦法引用,使用import,原始的general.ts文件。

回答

1

您定義的作品,你可以導入...

例如,我可以引用Langs像這樣:

var x = general.General.Langs; 

但是,你有沒有宣佈Langs是一類,所以你不能將它擴展爲一個。

如果的方式,允許擴展它來實現,它聲明爲一個類將允許它被用作基類(簡化的例子來說明,使用一類的作品):

declare module 'general' { 
    export module General { 
     export class Langs { 


     } 
    } 
}