microsoft / microsoft/TypeScript

JSDoc support for @memberof and @namespace

Abierto
#36,176 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Awaiting More Feedback Domain: JSDoc Suggestion
Lenguaje dominante
Go
Estrellas
111k
Forks
14.4k
Merge medio
1 d 19 h
PR fusionados (30 d)
117

Descripción

I work on a NodeJS Javascript codebase which uses plain JSDoc (i.e. no Typescript/Closure specific syntax). It uses require() rather than ES6/Typescript-style imports.

Our codebase has JDoc'ed code which lives under arbitrary @namespace declarations, meaning they do not correspond to actual code 'namespaces'. For example our code is JSDoc'ed as @namespace utilities but the module may be imported as utils.

My colleagues using Webstorm get the full JSDoc annotations/code completion/tooling but VSCode Intellisense does not recognised references like models.Account for e.g. parameters as shown below ...

// models.js

/** @namespace models */

/** @memberof models */
class Account {
  // ...
}

module.exports = { Account }
// main.js
const { Account } = require('./models')

/**
 * @return {models.Account}
 */
myMethod (account) => {
  return new Account()
}

Since basically the entire codebase is namespaced, I get reduced Intellisense support for my custom code and no support for writing correct JSDocs.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza con los ejemplos models.js y main.js y, a continuación, sigue cómo VSCode IntelliSense resuelve referencias JSDoc como models.Account para JavaScript basado en require(). Se considera completado cuando las declaraciones @namespace y @memberof funcionan con nombres de namespace arbitrarios y proporcionan la compatibilidad solicitada con referencias y completado.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript, node.js
Área
tooling
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.