microsoft / microsoft/TypeScript
JSDoc optional/required variant doesn't play well with multi-@param RecordType declarations
Personne n'a encore pris cette issue.
- Langage dominant
- Go
- Étoiles
- 111k
- Forks
- 14.3k
- Merge moyen
- 2 j 4 h
- PR mergées (30 j)
- 132
Description
TypeScript Version: 2.9.0-dev.20180330
Search Terms: as mentioned in this comment, I'm opening this issue because with this JSDoc syntax typescript doesn't recognize the params correctly.
Code
// A *self-contained* demonstration of the problem follows...
// Test this by running `tsc` on the command-line, rather than through another build tool such as Gulp, Webpack, etc.
/**
* @param {!object} args
* @param {!string} args.prop1
* @param {?string} args.prop2
*/
function patate(args) {
const { prop1, prop2 } = args;
}
Expected behavior: No errors
Actual behavior: With allowJs and checkJs, I get JSDoc '@param' tag has name 'prop1', but is no parameter with that name.
Playground Link:
Related Issues: https://github.com/Microsoft/TypeScript/issues/19645
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par l’exemple JavaScript autonome de l’issue et exécutez tsc avec allowJs et checkJs activés. Étudiez comment le compilateur traite la déclaration JSDoc comportant plusieurs @param ; c’est terminé lorsque l’exemple ne produit aucun diagnostic pour args.prop1 ou args.prop2.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, typescript
- Domaine
- compilers
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 35/100