microsoft / microsoft/TypeScript

Convert to ES2015 class do not recognize inheritance

Ouverte
#32,491 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

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

Description

Issue Type: Bug

function Derived() {
  Base.call(this, /*some base args*/);
  /* some other constructor work */
};
Derived.prototype = new Base();
Derived.prototype.constructor = Derived;

must be converted to

class Derived extends Base {
  constructor() {
    super(/*some base args*/);
    /* some other constructor work */
  }
}

Right now it converted to

class Derived {
  constructor() {
    Base.call(this, /*some base args*/);
    /* some other constructor work */
  }
}
;
Derived.prototype = new Base();
Derived.prototype.constructor = Derived;

VS Code version: Code 1.36.1 (2213894ea0415ee8c85c5eea0d0ff81ecc191529, 2019-07-08T22:59:35.033Z)
OS version: Windows_NT x64 10.0.17134

System Info
Item Value
CPUs Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz (8 x 1992)
GPU Status 2d_canvas: enabled
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
native_gpu_memory_buffers: disabled_software
oop_rasterization: disabled_off
protected_video_decode: enabled
rasterization: enabled
skia_deferred_display_list: disabled_off
skia_renderer: disabled_off
surface_synchronization: enabled_on
video_decode: enabled
viz_display_compositor: disabled_off
webgl: enabled
webgl2: enabled
Load (avg) undefined
Memory (System) 7.89GB (2.36GB free)
Process Argv
Screen Reader no
VM 0%
Extensions (14)
Extension Author (truncated) Version
search-crates-io bel 1.2.1
better-toml bun 0.3.2
bracket-pair-colorizer-2 Coe 0.0.28
pegjs-syntax fut 0.1.1
nwscript glo 0.0.2
restructuredtext lex 112.0.0
hg mrc 1.3.0
vscode-language-pack-ru MS- 1.36.2
rust rus 0.6.1
crates ser 0.4.3
vscode-hexdump sle 1.7.2
code-spell-checker str 1.7.17
code-spell-checker-russian str 0.2.2
sort-lines Tyr 1.8.0

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 la conversion dans VS Code avec l’exemple fonctionnel de Derived et Base du rapport, puis suivez le point d’entrée de la conversion de classes JavaScript-to-ES2015. Le travail est terminé lorsque le résultat utilise class Derived extends Base et super(...) tout en conservant le reste du travail du constructeur, au lieu de laisser des affectations au prototype.

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

Évaluation

Stack technique
javascript, typescript
Domaine
tooling
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 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.