microsoft / microsoft/TypeScript

typedef imports should use default exports

Ouverte
#36,587 4 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Awaiting More Feedback In Discussion Suggestion
Langage dominant
Go
Étoiles
111k
Forks
14.4k
Merge moyen
1 j 19 h
PR mergées (30 j)
117

Description

Search Terms

checkJs typedef import

Suggestion

When the module ./core.controller has a default export defined, I would like to be able to do:

/**
 * @typedef { import("./core.controller") } Chart
 */

Instead of:

/**
 * @typedef { import("./core.controller").Chart } Chart
 */

Use Cases

My file had defined export default Chart;.

TypeScript made me add a duplicate export, which I don't want to have to add

export {
	Chart
};

This resulted in lots of extra code

It also took me an extremely long amount of time to figure out I needed to do this because the documentation did not mention this as a limitation.

Examples

Already shared in the above sections.

Checklist

My suggestion meets these guidelines:

  • This wouldn't be a breaking change in existing TypeScript/JavaScript code
  • This wouldn't change the runtime behavior of existing JavaScript code
  • This could be implemented without emitting different JS based on the types of the expressions
  • This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
  • This feature would agree with the rest of TypeScript's Design Goals.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par la section sur les types d’importation du manuel TypeScript et les formes d’importation de typedef JSDoc existantes présentées dans l’issue. Suivez la manière dont un module exporté par défaut est représenté et testé, puis confirmez que la forme d’importation plus courte est acceptée sans nécessiter un export nommé en double et que la documentation décrit ce comportement.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
javascript, typescript
Domaine
compilers
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
38/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.