【问题标题】:jsdoc documentation functions inside module模块内的jsdoc文档功能
【发布时间】:2013-10-17 05:28:51
【问题描述】:

我有以下代码:

       /**
     * @fileOverview Various tool functions.
     * @version 3.1.2
     */


define(function (require, exports, module) {
    "use strict";

    /**
     * A module that handles file
     * @module fileHandler
     */

       /// Form to open a new set of files
       var newFileForm = require("pvsioweb/forms/newFileForm");   

       var formEvents = require("pvsioweb/forms/events");

       /// Reference to current project, main.js passes it by using fileHandler_setProject
       var currentProject;


/**
 * this is a function
 * @param p1 First parameter
 * @param p2 Second parameter
 * @return {String} some value
 */
function setProject(project)
{
    currentProject = project;

}


/** 
 * Create a new file, it is going to be shown in the listview: #pvsFiles  
 *  
 *  @param  name:    name of the file
 *  @param  content:   textual content of the file 
 *
 *  @returns void 
 *        
 */

function new_file(name, content )
{
    var default_name = "MyTheory.pvs";
    var default_content = "MyTheory" + " THEORY BEGIN \nEND MyTheory" ;

    if( ! name ) { name = default_name; }

    if( ! content ) { content = default_content; }

        currentProject.addSpecFile(default_name, default_content);
    renderSourceFileList(currentProject.pvsFiles());    
}


/** 
 *  Display new file form, invoke function open_file (see below)  
 *
 *  @returns void 
 *        
 */
function open_file_form()
{
    newFileForm.create().addListener(formEvents.FormCancelled, function (e) {
            console.log(e);
            e.form.remove();
    }).addListener(formEvents.FormSubmitted, function (e) {
            console.log(e);
            e.form.remove();
            open(e.formJSON);
    });

}

/** 
 *  Open file specified in data, data must have this structure: ????  FIXME
 * 
 *  @param  data: ??? FIXME
 *
 *  @returns void 
 *        
 */
function open_file(data)
{
    var q = queue(), i;


        for (i = 0; i < data.pvsSpec.length; i++) {
            q.defer(createFileLoadFunction(data.pvsSpec[i]));
        }



            q.awaitAll(function (err, res) {
                currentProject.saveNew(function (err, res) {
                    console.log({err: err, res: res});

                        renderSourceFileList(currentProject.pvsFiles());

                });
            });

    }

/********* Exported Function ******************/


module.exports = {
    new_file: function (name, content) {
        return new_file(name, content);
    },
    open_file_form: function () {
        return open_file_form();
    },
    open_file: function () {
        return open_file();
    },
    setProject: function (project) {
        return setProject(project);
    }   

};

/***********************************************/


});

我尝试使用 jsdoc 进行一些输出,但它似乎只识别单词模块和文件开头的标题。

如何修复才能同时查看有关函数的文档?

谢谢

【问题讨论】:

    标签: javascript documentation jsdoc


    【解决方案1】:

    我不确定我是否理解这个问题。您是否尝试使用 jsdoc 生成文档?如果是这样,您需要将 jsdoc cmets 添加到每个函数。此外,您的导出可以大大简化:

    module.exports = {
        new_file: new_file,
        open_file_form: open_file_form,
        open_file: open_file,
        setProject: setProject
    };
    

    【讨论】:

    • 是的,我正在尝试使用 jsdoc 生成文档。请看一下我的语法,也许它很糟糕。
    • 好的,我看到你已经用额外的代码更新了这个问题。现在这更有意义了。
    • 我认为您要么需要将 jsdoc cmets 移至导出,如此处所述:github.com/jsdoc3/jsdoc/issues/121 要么使用@lends 标签:usejsdoc.org/tags-lends.html
    猜你喜欢
    • 1970-01-01
    • 2018-12-10
    • 1970-01-01
    • 1970-01-01
    • 2014-08-29
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多