microsoft / microsoft/TypeScript

Named function arguments not supported in JSDOC

Offen
#56,574 7 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

In Discussion Suggestion
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.4k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
117

Beschreibung

Does this issue occur when all extensions are disabled?: Yes

Version: 1.84.2 (user setup)
Commit: 1a5daa3a0231a0fbba4f14db7ec463cf99d7768e
Date: 2023-11-09T10:51:52.184Z
Electron: 25.9.2
ElectronBuildId: 24603566
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Windows_NT x64 10.0.22621

While defining a function type in JSDOC, if a name if provided for the argument, TypeScript fails to recognize it.

Steps to Reproduce:

This is a snippet of sample code that works and does not work.

The first typedef does not include an argument name, IntelliSense refers to the argument as arg0.

The second typedef does include an argument name, and TypeScript flags it as an error.

/**
* @typedef {function(string ): Promise<string>} IdoRequestFunction
*/

/** @type IdoRequestFunction */

export default async function request(idoRequest) {

    return idoRequest;

}

/**
* @typedef {function(idoRequest:string ): Promise<string>} IdoRequestFunctionX
*/

/** @type IdoRequestFunction */

export async function requestX(idoRequest) {

    return idoRequest;

}

image

Thank you for your assistance.

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

Beginne mit der bereitgestellten JavaScript/JSDoc-Reproduktion und verfolge, wie TypeScript Funktionstypen mit benannten Parametern parst und prüft. Fertig ist die Aufgabe, wenn das benannte Argument ohne Fehler akzeptiert wird und IntelliSense diesen Namen anstelle von arg0 verwendet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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