microsoft / microsoft/TypeScript

JSDoc @this/@lends/@namespace tags are ignored inside Object

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

Personne n'a encore pris cette issue.

Bug Domain: JSDoc
Langage dominant
Go
Étoiles
111k
Forks
14.3k
Merge moyen
2 j 4 h
PR mergées (30 j)
132

Description

MyElement.d.ts

declare class MyElement {
    constructor(target: Element);
    target: Element
}

MyElement.js

@this on globally defined function works as expected, Ctrl+Space shows the correct type of target - Element!
image

@this before function in the object doesn't take into account!
image

@lends before the object itself is also not taken into account!
image

the same with @namespace
image

I couldn't find the way to point the correct "this" type for function in objects.

VS Code version: Code 1.42.0 (ae08d5460b5a45169385ff3fd44208f431992451, 2020-02-06T10:51:33.119Z)
OS version: Darwin x64 19.3.0

System Info
Item Value
CPUs Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (16 x 3600)
GPU Status 2d_canvas: enabled
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
oop_rasterization: disabled_off
protected_video_decode: unavailable_off
rasterization: enabled
skia_renderer: disabled_off
surface_control: disabled_off
surface_synchronization: enabled_on
video_decode: enabled
viz_display_compositor: enabled_on
viz_hit_test_surface_layer: disabled_off
webgl: enabled
webgl2: enabled
Load (avg) 1, 1, 1
Memory (System) 32.00GB (7.02GB free)
Process Argv
Screen Reader no
VM 0%
Extensions: none

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

Reproduisez le comportement avec les extraits MyElement.d.ts et MyElement.js et comparez le cas de la fonction globale avec les fonctions et les balises au niveau de l’objet. Vérifiez le traitement de JSDoc utilisé par la complétion de VS Code, puis confirmez que @this, @lends et @namespace sont reconnus dans les objets et que Ctrl+Space indique le type attendu.

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

Évaluation

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

Recevez les nouvelles issues par e-mail

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