我正在尝试记录一个用 JS/NodeJS 编写的非常广泛的(对我而言)代码库。JSDoc 似乎是唯一可用的有效工具,但也存在挑战。以下是我想知道如何记录的两个:
1)我“需要”一个模块(Buzz),然后设置一个监听器:
var Buzz = require("Buzz");
var ...
.
.
.
["in_call", "idle", "offline", "busy"].forEach(function (e) {
Buzz.on("state:" + e, sounds.stop);
});
Buzz.on("message", function (message) {
if (message && !message.read)
sounds.play("message");
});
2) 使用 'Vue.js' 时,现在需要使用函数来设置属性,这意味着函数内有函数作为属性。下面是我让 jsdoc 记录函数的一种笨拙方式,但显然它没有任何意义,因为真的没有 ae-admin '类'。
/**
* @class ae-admin
*/
module.exports = Vue.component("ae-admin", {
className: "ae-admin",
template: template,
/**
* [data description]
* @memberOf ae-admin
* @return {[type]} [description]
*/
data: function () {
return {
.
.
.
};
},
/**
* ready description]
* @memberOf ae-admin
* @return {[type]} [description]
*/
ready: function () {},
methods: {
/**
* [set_page description]
* @memberOf ae-admin
* @param {[type]} page [description]
*/
set_page: function (page) {
this.$data.page = page;
},
.
.
.
有趣的是,JSdoc 看起来真的很像 javadoc,而 js 范式是事后才想到的。无论如何,任何帮助将不胜感激。