ho definito un @callback
in questo modo:Come definire una funzione come implementazione di callback in JSDoc?
/**
* @callback MyClass~Handler
* @param {string} target
* @param {Options} options - Original options
*/
Io lo uso per definire la mia classe di prototipo:
/**
* @param {string} name - The name
* @param {MyClass~Handler} handler
* @private
*/
MyClass.prototype._builder = function(name, handler) { //...
Ma come dire JSDoc che la seguente funzione ha la stessa definizione il mio MyClass~Handler
(qualcosa che sarebbe come @isacallback
nel seguente codice)?
/**
* Default handler
* @isacallback {MyClass-Handler}
* @private
*/
MyClass.prototype._defaultHandler = function(target, options) { // ...
Non proprio, perché il '@ tipo' definisce una classe (un tipo come hai detto tu), quindi non posso descrivere i parametri di funzione ad esempio con quell'annotazione ... –
Penso che tu sia frainteso:' @ type' non è usato per definire una classe (questo è ciò che '@ typedef' è per). Il '@ callback' definisce il tipo (poiché' @ callback' è fondamentalmente solo '@ typedef' limitato alle funzioni), e quindi si fa riferimento a quella definizione usando' @ type' (il modo in cui si desidera si potrebbe con il non esistente) ' @ isacallback' tag). – machineghost