2015-04-06 128 views
6

我在理解聯合中名稱空間和模塊的用途時遇到了一個問題。例如,我有一個類Game.utils.Matrix。我想註釋Game爲命名空間,utils作爲一個模塊和Matrix爲一類:JSDoc:模塊和名稱空間之間的關係是什麼

/** 
* @namespace Game 
*/ 

/** 
* @module utils 
* @memberOf Game 
*/ 

/** 
* Create a matrix 
* @constructor 
*/ 
function Matrix(){} 

它創建一個文檔和Matrix類是Game.utils~ Matrix的名稱路徑,但如果我按照Module鏈接它的名字路徑爲Module: utils而不包含Game命名空間前綴,如果我遵循Game鏈接,則它不包含utils模塊鏈接。

此外,我不能在另一個類添加到該模塊作爲utils模塊選項卡不顯示這個類:

/** 
* Create Dictionary 
* @memberOf Game.utils 
* @constructor 
*/ 
function Dictionary(){} 

的問題是:什麼是記錄命名空間和模塊的正確方法他們每個人的用例是什麼?

回答

4

我玩了一下,我想在命名空間模塊有點棘手。對我有用的是定義一個模塊utils和一個引用它的名稱空間。該模塊被稱爲utils然而,不是Game.utils但在Game中,您可以看到一個鏈接到它的屬性。

/** 
* @namespace Game 
* @property {module:utils} utils 
*/ 

/** 
* @module utils 
*/ 

/** 
* Create a matrix 
* @class 
*/ 
function Matrix(){} 
相關問題