17
Jak udokumentować za pomocą API JSDoc który następującą postać (pojedynczy plik)JSDoc właściwy sposób udokumentować socket.on ('zdarzenie', function() {}) i trasy obsługi
// api.js
exports.addSocketEvents = function(socket) {
/**
* This will do that and ...
* @param {Object} data Some data
* @param {string} data.bla Something about bla
* @param {number} data.n Some number
*/
socket.on('something_1', function(data) { ... });
/**
* Another function that will do ..
* @param {string} id of something
*/
socket.on('something_2', function(id) { ... });
...
};
exports.addRoutes = function(app) {
/**
* PATCH /something/:id/juhu
* Will do this and that and will respond with ...
* @param {string} _id Id of bonus document
*/
app.patch('/something/:id/juhu', function(req, res) {...});
/**
* GET /something
* Will fetch and respond back with ...
*/
app.get('/something', function(req, res) {...});
...
};
Mój pomysł jest tylko dodać powyżej nadekranowanych @namespace
i @lends
nad anonimowymi funkcjami, ale powoduje to pustą dokumentację.
Uruchomienie polecenia JSDoc wobec tego pliku wszystkie funkcje anonimowe pozostają ignorowane (nieudokumentowane). Poza tym staram się unikać używania klasy @, jeśli mogę, w tym przypadku dokumentacja będzie zawierała nowe socketio(), które może być mylącą wskazówką dla kogoś, kto przeczyta dokumenty. – Srle
Możesz usunąć klasę @, ponieważ widzę, dlaczego nie chcesz ich. Czy korzystasz z najnowszego JSDoc? Też znalazłem to pytanie. https://stackoverflow.com/questions/8071897/how-to-document-anonymous-functions-closure-with-jsdoc-toolkit –