JSDoc在Node.js下的部署

簡單說函喉,用JSDoc寫開發(fā)文檔就是寫注釋,只是在書寫的時候要把它們按照規(guī)范工整的寫出來,這樣即可達到注釋的目的又能順便地讓JSDoc生成規(guī)范的文檔取董,兩全其美。這樣想事情就簡單多了不是嗎无宿?

怎么做?

我這里只講在node.js平臺下的操作步驟茵汰。

全局安裝JSDoc依賴包:
npm i jsdoc -g
隨便寫一個帶有JSDoc注釋的js文件吧:
    /** 
     * JSDoc Demo File
     * see more link to <a >blog.pagegaga.com</a>
     * @author Warren <aliang_ok@sina.com>
     * @copyright Warren 2016
     */

    /** 
     * Say hello.
     * @param {string} str - Anything what you want to say.
     */
    var app=function(str){
        alert('hello');
    }
然后就能在項目根目錄下執(zhí)行命令,對要生成文檔的文件做解析了:
jsdoc ./

上面這段命令是說對項目根目錄(不包括子目錄)下所有文件做解析孽鸡,這樣做的結果是JSDoc解析指定目錄所有包含以JSDoc規(guī)范書寫注釋的文件蹂午,并在默認目錄(./out)下生成可供瀏覽器訪問的html文件及相關依賴(包括樣式、字體彬碱、腳本等)文件豆胸。執(zhí)行完成后,就可以在項目根目錄里找到./out/index.html文件雙擊預覽了堡妒。

JSDoc 提供了很多命令行參數(shù)配乱,可以看官方文檔關于命令行相關的說明,這里簡單舉個例子:

我們可以執(zhí)行npm i docdash --save-dev安裝一個第三方的主題包皮迟,然后執(zhí)行如下命令:

jsdoc ./app.js -d ./doc -t ./node_modules/docdash

結果是搬泥,JSDoc把app.js中的注釋生成文檔并放到了指定目錄(./doc)下,同時生成的文檔套用了docdash主題伏尼。

在命令行里執(zhí)行命令每次都要重寫一遍那些冗長的配置參數(shù)很麻煩忿檩,不怕,JSDoc可以引用外部配置文件讓事情一勞永逸:

在項目目錄下新建一個名為jsdoc.cfg.json的配置文件爆阶,然后以JSON格式填寫如下內容到這個配置文件中:

    {
        "source":{
            "include":[".","./server/"],
            "exclude":["./node_modules/"]

        },
        "opts":{
            "template":"node_modules/docdash",
            "encoding":"utf8",
            "destination":"./jsdoc/",
            "readme":"readme.md"
        }
    }

關于這些配置項的解釋燥透,可以在官網(wǎng)找到。保存后辨图,再執(zhí)行如下命令:

jsdoc -c jsdoc.cfg.json

這樣班套,JSDoc就會按照指定的配置文件中的配置信息來處理文檔了。

了解清楚如何生成文檔故河,剩下的問題就是怎么寫規(guī)范的注釋才能生成像樣的開發(fā)文檔了吱韭。

怎么寫?

JSDoc注釋以/**開頭*/結尾鱼的,并且每一行開頭都有一個*理盆。在注釋段內通過以@開頭的標簽為代碼提供注解,JSDoc根據(jù)這些標簽來組織文檔結構凑阶,套用樣式最終生成文檔猿规。我們在這里只舉幾個常用的例子:

每個模塊都可以有這樣的標簽:
    /** 
     * description
     * description more
     * @author author name <email>
     * @copyright copyright information
     */
  • description 用來描述代碼段,其中可以插入html元素宙橱,比如一個a鏈接姨俩,
  • @author可以注明該代碼塊的作者蘸拔,
  • @copyright用來聲明版權。
function:
    /** function description
     * @param {type} paramName - description
     * @returns {type} description
     */
  • @param 用來描述函數(shù)參數(shù)哼勇,{type}是一個內聯(lián)標簽都伪,用來注明該參數(shù)的類型(比如string、object积担、number),-后面再寫該參數(shù)的描述文字猬仁;
  • @returns用來標注該函數(shù)最終返回什么類型的值并加以說明帝璧。
模塊:
    /** module description
     * @module
     */

@module 后面可以跟模塊名,如果不寫湿刽,JSDoc會自動取名的烁。

JSDoc提供了豐富的標簽,官網(wǎng)文檔為我們做了詳細講解诈闺,務必去閱讀下渴庆。

代碼用法列舉:

可以用@example為代碼添加應用案例,以實際用例說明代碼的用法:

    /** description
     * @example
     * app('hello');//調用方法
     */

更多

上面看起來很簡單對嗎雅镊?然而它可以做更多襟雷!通過JSDoc插件機制可以支持解析并嵌入markdown、通過解析node.js的package.json構建文檔的目錄結構等諸多功能讓文檔變得更飽滿仁烹。

想要讓項目工程化進展得更順溜耸弄,怎能少了JSDoc這個利器呢?

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末卓缰,一起剝皮案震驚了整個濱河市计呈,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌征唬,老刑警劉巖捌显,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異总寒,居然都是意外死亡扶歪,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門偿乖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來击罪,“玉大人,你說我怎么就攤上這事贪薪∠苯” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵画切,是天一觀的道長竣稽。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么毫别? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任娃弓,我火速辦了婚禮,結果婚禮上岛宦,老公的妹妹穿的比我還像新娘台丛。我一直安慰自己,他們只是感情好砾肺,可當我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布踢故。 她就那樣靜靜地躺著初澎,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上本涕,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天鞠眉,我揣著相機與錄音绞愚,去河邊找鬼郎任。 笑死,一個胖子當著我的面吹牛番官,可吹牛的內容都是我干的庐完。 我是一名探鬼主播,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼鲤拿,長吁一口氣:“原來是場噩夢啊……” “哼假褪!你這毒婦竟也來了?” 一聲冷哼從身側響起近顷,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤生音,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后窒升,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體缀遍,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年饱须,在試婚紗的時候發(fā)現(xiàn)自己被綠了域醇。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡蓉媳,死狀恐怖譬挚,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情酪呻,我是刑警寧澤减宣,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站玩荠,受9級特大地震影響漆腌,放射性物質發(fā)生泄漏贼邓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一闷尿、第九天 我趴在偏房一處隱蔽的房頂上張望塑径。 院中可真熱鬧,春花似錦填具、人聲如沸统舀。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽绑咱。三九已至,卻和暖如春枢泰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背铝噩。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工衡蚂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人骏庸。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓毛甲,卻偏偏與公主長得像,于是被迫代替她去往敵國和親具被。 傳聞我的和親對象是個殘疾皇子玻募,可洞房花燭夜當晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內容