我正在努力用JSDocs记录router.get调用。如果尝试将其附加到路由器调用本身,则无法使文档正确显示在页面上。

/**
 * Health check
 * @memberof health
 */
router.get('/happy', function(req, res) {
    res.json({ "status" : "OK" });
});

为了解决这个问题,我使函数具有名称。
router.get('/happy', happy);

/**
 * Health check
 * @memberof health
 */
function happy(req, res) {
    res.json({ "status" : "OK" });
}

这行得通,但我真的很想找到一种方法使第一种方法起作用。有没有办法记录第一个示例?我可以使用一个关键字吗?

最佳答案

我在代码中执行以下操作。

/** Express router providing user related routes
 * @module routers/users
 * @requires express
 */

/**
 * express module
 * @const
 */
const express = require('express');

/**
 * Express router to mount user related functions on.
 * @type {object}
 * @const
 * @namespace usersRouter
 */
const router = express.Router();

/**
 * Route serving login form.
 * @name get/login
 * @function
 * @memberof module:routers/users~usersRouter
 * @inner
 * @param {string} path - Express path
 * @param {callback} middleware - Express middleware.
 */
router.get('/login', function(req, res, next) {
  res.render('login', {title: 'Login', message: 'You must login'});
});

输出为:
Screenshot
node.js - JSDocs : Documenting Node. js express 路线-LMLPHP
node.js - JSDocs : Documenting Node. js express 路线-LMLPHP

关于node.js - JSDocs : Documenting Node. js express 路线,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31818538/

10-09 16:40