2016-03-02 135 views
0

如何獲取對模塊聲明中另一個模塊的引用?請看下面的例子:在類型聲明中引用模塊

declare module "meteor/meteor" { 
    export module Meteor { 
    ... 
    enum StatusEnum { 
     connected, 
     connecting, 
     failed, 
     waiting, 
     offline 
    } 
    ... 
    } 
} 

declare module "meteor/ddp" { 
    export module DDP { 

    interface DDPStatus { 
     ... 
     status: Meteor.StatusEnum; // HOW DO I GET REFERENCE TO THE METEOR MODULE? 
    } 
} 

感謝您的任何幫助。

回答

0

//如何獲得氣體模塊的參考?

只要像你一樣使用導入。 :

declare module "meteor/ddp" { 

    // Import 
    import Meteor = require("meteor"); 

    export module DDP { 

    interface DDPStatus { 
     ... 
     status: Meteor.StatusEnum; 
    } 
} 
+0

謝謝!實際上,它甚至與ES6語法一起工作:從「流星」導入流星。 – tomitrescak

+0

@tomitrescak你可能應該把它當作'流星'的流星*作爲流星'\t – basarat

+0

另一件事。我如何在不屬於任何模塊的應用程序聲明文件中執行此操作?我有點迷失在這裏。例如我有一個接口'聲明接口IContext流星:流星; }'我怎樣才能得到那顆流星的參考?我會問另一個問題。會更乾淨。 – tomitrescak