Microsoft/TypeScript

Intellisense behaviour of functions and parameters

Open

#3 520 ouverte le 16 juin 2015

Voir sur GitHub
 (4 commentaires) (0 réactions) (0 assignés)TypeScript (6 726 forks)batch import
Experience EnhancementHelp WantedSuggestionVS Code Tracked

Métriques du dépôt

Stars
 (48 455 stars)
Métriques de merge PR
 (Merge moyen 6j 17h) (9 PRs mergées en 30 j)

Description

Some odd/unintuitive Intellisense behaviour:

/**
 * Function description A
 * @param name Parameter description A
 */
function uniqueName(name: string): string {
}

export const Uid = {
    /**
     * Function description B
     * @param name Parameter description B
     */
    uniqueName
};

The intellisense description for the 'Uid.uniqueName' property is now description B, however the intellisense for the parameter is description A. There isn't anything overriding here - the description of the function is always taken from the export, and the parameter description is always taken from the function definition. As such, I need to do the following to get full intellisense support for this pattern:

/**
 * @param name Parameter description
 */
function uniqueName(name: string): string {
}

export const Uid = {
    /**
     * Function description
     */
    uniqueName
};

i.e. function definitions in one place, parameter definitions in another place. I know I can work around this by restructuring the code, but it still feels like I should be able to achieve it in the above format.

Guide contributeur