A jsdoc3 plugin use `@vuedoc/md`
npm install jsdoc-vuedoc> A jsdoc plugin use @vuedoc/md.
- node@8.x: That support async/await features.
- @vuedoc/md.
``sh`
npm i jsdoc-vuedoc -D
> add jsdoc-vuedoc node to jsdoc.json.
- tag: default @vuedoc.log
- : default true.
- the other vuedco/md options.
> This plugin just extract the component's info into markdown format, and instert it into the @vuedoc's position.
> Not affect other jsdoc features of the code.
1. add @vuedoc tag to comment.@exports componentName
2. add tag to comment.
just add @vuedoc tag, @exports tag, to the to document in you vue SFC.
`js`
/**
* sidebar component description
* @vuedoc
* @exports component/SideBar
*/
export default {}
- 安装jsdoc: npm i jsdoc -Dnpm i sherry-docstrap -D
- 安装模板:, 原来的docstrap有点小bug还未修复,所以自己暂时发布一个。"jsdoc": "rm -rf public/jsdoc && node_modules/.bin/jsdoc -c jsdoc.json"
- 在项目目录下建了配置文件:下面有示例,适当修改。
- 在pacakge.json 里添加一个script: , public/jsdoc为发布位置,适当修改npm run jsdoc
- 生成文档:
`json``
{
"plugins": [
"node_modules/jsdoc-vuedoc",
"plugins/markdown",
"plugins/summarize"
],
"jsdoc-vuedoc": {
"tag": "vuedoc"
},
"markdown": {
"tags": ["author", "classdesc", "description", "param", "property", "returns", "see", "throws"]
},
"recurseDepth": 10,
"source": {
"include": ["fe/src"],
"includePattern": ".+\\.(js|vue)$",
"excludePattern": "(^|\\/|\\\\)_"
},
"sourceType": "module",
"tags": {
"allowUnknownTags": true,
"dictionaries": ["jsdoc", "closure"]
},
"templates": {
"logoFile": "",
"cleverLinks": false,
"monospaceLinks": false,
"dateFormat": "ddd MMM Do YYYY",
"outputSourceFiles": true,
"outputSourcePath": true,
"systemName": "DocStrap",
"footer": "",
"copyright": "DocStrap Copyright © 2012-2015 The contributors to the JSDoc3 and DocStrap projects.",
"navType": "vertical",
"theme": "cosmo",
"linenums": true,
"collapseSymbols": false,
"inverseNav": true,
"protocol": "html://",
"methodHeadingReturns": false
},
"markdown": {
"parser": "gfm",
"hardwrap": true
},
"opts": {
"template": "node_modules/sherry-docstrap/template",
"encoding": "utf8",
"destination": "./public/jsdoc/",
"recurse": true,
"readme": "README.md",
"tutorials": "./docs/"
}
}
!效果.