Actualmente estoy usando esto:
/** @type {TagsLevel} */ export let list; /** @type {string} */ export let tagListName; /** @type {string | null} */ let srcTag = null; /** @type {number | null} */ let srcTagNum = null; /** @type {number | null} */ let srcLevelNum = null;No está muy claro.
Ojalá pudiera usarlo de esa manera:
/** @type {TagsLevel} */ /** @type {string} */ export let list; export let tagListName; /** @type {string | null} */ /** @type {number | null} */ /** @type {number | null} */ let srcTag = null; let srcTagNum = null; let srcLevelNum = null;Esto debería funcionar de manera idéntica al código anterior.
¿Existe una sintaxis JSDoc que permita algo como esto?
Si no es así, me gustaría saber dónde hacer la sugerencia de que se introduzca el apoyo para tal caso.
¿POR QUÉ ESTO?
Estoy siguiendo la sintaxis de la función - @param . No es idéntico, pero es muy similar:
// Parameters may be declared in a variety of syntactic forms /** * @param {string} p1 - A string param. * @param {string=} p2 - An optional param (Google Closure syntax) * @param {string} [p3] - Another optional param (JSDoc syntax). * @param {string} [p4="test"] - An optional param with a default value * @returns {string} This is the result */ function stringsStringStrings(p1, p2, p3, p4) { // TODO }La alternativa - esto:
/** @type {TagsLevel} */ export let list; /** @type {string} */ export let tagListName; /** @type {string | null} */ let srcTag = null; /** @type {number | null} */ let srcTagNum = null; /** @type {number | null} */ let srcLevelNum = null;Pero tampoco está muy claro, y hace que la fila sea muy larga.