将基本 Gulpfile 设置为 运行 JSDoc

Setting up a basic Gulpfile to run JSDoc

为了让 JSDoc 满意,我正在努力了解我当前的 gulpfile 中缺少什么。

下面的代码不会导致抛出任何错误,但是查看生成的文档的索引页,很明显我的文档没有被格式化。

我在这里错过了什么?

首先,这是我要记录的函数。

/**
 *   Returns the sum of a and b
 *   @param {Number} a
 *   @param {Number} b
 *   @return {Number} Sum of a and b 
 */
var sum = function(a, b){
  return a + b; 
};

接下来是我的gulpfile.js

var gulp = require('gulp');
var jsdoc = require('gulp-jsdoc');

gulp.task('js-doc', function(){
  return gulp.src([ 'app.js' ])
  .pipe(jsdoc.parser({}, 'test'))
  .pipe(jsdoc.generator('./docs'));
});

一旦我 运行 gulp js-doc,它就会创建 docs/ 目录并构建文档。但是,在浏览器中访问 index.html 页面会发现实际上没有生成任何文档。当我查看由 JSDoc 生成的另一个文件 app.js.html 时,我看到了我的代码块,但其中没有任何内容已被解析并转化为实际文档。请参阅下面的屏幕截图。

我想我缺少对 JSDoc 或 Gulp 的一些基本理解。

想通了:

npm install --save jsdoc gulp-shell

然后,在您的 gulpfile.js 中粘贴以下要求和任务:

var gulp = require('gulp');
var shell = require('gulp-shell');

gulp.task('js-doc', shell.task(['./node_modules/jsdoc/jsdoc .']));

现在当您从命令行 运行 gulp js-doc 时,您将生成文档。