JSDoc保留输出中的注释顺序

Ant*_*gor 8 javascript jsdoc

我有一个JavaScript对象,它介绍了一些公共方法,我想使用JSDoc来记录它们.

在源文件中,我将这些函数按照合理的顺序进行分组和排序,但是在生成JSDoc后,我按字母顺序接收所有这些函数,这没有多大意义.

有没有办法保持输出中的顺序?我找不到任何答案,但我也发现这是不可能的.

小智 5

简短的回答:

在您的 conf.json 文件中,添加一个 opts 元素"sort": false,其中 sort 标记 JSDoc 是否应使用字母排序。

假设您使用 conf.json 文件来指定您的 JSDOC 配置选项:

jsdoc -c path/to/conf.json
Run Code Online (Sandbox Code Playgroud)

例如:

{
    "tags": {
        "allowUnknownTags": false
    },
    "source": {
        "includePattern": ".+\\.js(doc)?$",
        "excludePattern": "(^|\\/|\\\\)_"
    },
    "plugins": [],
    "templates": {
        "cleverLinks": true,
        "monospaceLinks": false,
    },
    "opts": {
        "encoding": "utf8",
        "lenient": false,
        "sort": false
    }
}
Run Code Online (Sandbox Code Playgroud)

我还遇到了Docstrap,一个用于 JSDoc3 的 Bootstrap 模板。

然后,您可以使用模板部分中的“排序”选项。这种情况下的 conf.json 文件示例可能显示为:

{
    "tags": {
        "allowUnknownTags": true,
        "dictionaries": ["jsdoc","closure"]
    },
    "source": {
        "includePattern": ".+\\.js(doc|x)?$",
        "excludePattern": "(^|\\/|\\\\)_"
    },
    "plugins": [],
    "templates": {
        "cleverLinks": false,
        "monospaceLinks": false
        "sort": false
    }
}
Run Code Online (Sandbox Code Playgroud)

Docstrap 站点给出的描述是:

排序默认为真。指定 jsdoc 应该对数据进行排序还是使用文件顺序。也可以是字符串,如果是,则直接传递给 jsdoc。默认字符串是“longname, version, since”。