microsoft / microsoft/TypeScript

Make Javascript intellisense detect inheritance

Offen
#13,206 13 Kommentare 16 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Committed Domain: JavaScript Suggestion
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.3k
Ø Merge
2 T. 4 Std.
Gemergte PRs (30 T.)
132

Beschreibung

From @benjaminmillhouse on December 21, 2016 17:33

  • VSCode Version: Code 1.8.0 (38746938a4ab94f2f57d9e1309c51fd6fb37553d, 2016-12-13T17:38:28.425Z)
  • OS Version: Darwin x64 16.3.0
  • Extensions:
Extension Author Version
JSDocTagComplete HookyQR 0.0.2
html-css-class-completion Zignd 1.0.3
theme-atom-one-dark andischerer 0.0.1
vscode-eslint dbaeumer 1.1.0
docthis joelday 0.3.5
Angular1 johnpapa 0.1.16
Angular2 johnpapa 1.0.2
csharp ms-vscode 1.5.3
js-atom-grammar ms-vscode 0.1.10
vscode-icons robertohuertasm 4.0.2
bootstrap-3-snippets wcwhitehead 0.0.8

Hello,
I would love it if VS Code's Javascript intellisense was able to detect inheritance. Please let me know if there is a way to accomplish this today through jsdoc comments or anything like that. I have tried all kinds of different ways to get VS Code to detect it (definitions like below, @augments, @extends jsdoc comments, etc) and have not gotten anything to work.

As an example, when inheriting like this:
function BaseClass() {
  this.foo = 'bar';
}
BaseClass.prototype.baz = function () { }

function InheritedClass() {
  BaseClass.call(this);
}
InheritedClass.prototype = Object.create(BaseClass.prototype);
InheritedClass.prototype.constructor = InheritedClass;

Would like the intellisense for new InheritedClass(). to show 'foo' and 'baz' as properties/methods for InheritedClass in Intellisense.

Copied from original issue: Microsoft/vscode#17690

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Keine Quelldatei, kein Test und kein Einstiegspunkt ist angegeben. Beginne damit, das bereitgestellte Beispiel mit BaseClass/InheritedClass in VS Code nachzustellen, und verfolge den JavaScript IntelliSense-Pfad, der die Prototypvererbung verarbeitet. Als erledigt gilt die Aufgabe, wenn die Vervollständigungsvorschläge für new InheritedClass() die geerbten Member foo und baz enthalten.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript, typescript
Bereich
devtools
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.