microsoft / microsoft/TypeScript
Code completion: suggest tokens from "paths" in tsconfig.json
Personne n'a encore pris cette issue.
- Langage dominant
- Go
- Étoiles
- 111k
- Forks
- 14.3k
- Merge moyen
- 2 j 4 h
- PR mergées (30 j)
- 132
Description
Search Terms
Code completion; module
Suggestion
Use Cases
For those paths which contains no wildcard character, can we suggest tokens from module it points?
For example:
{
"baseUrl": '.',
"paths": {
"my-base-module": [
"../../dest/base"
],
}
in the example, we can say that bare module specifier "my-base-module" is mapped to path "../../dest/base", which is actually a .d.ts.
However, my IDE(Visual Studio Code) do not list available symbols in "my-base-module",
such as, When I type:
const v: Ve // I 'm going to type Vec3, which is defined in "../../dest/base".
I hopo IDE can suggest Vec3 and auto-complete the importing statement as:
import { Vec3 } from "my-base-module";
You may ask: Why don't you put "../../dest/base" in "types" option in tsconfig.json.
Well, the "../../dest/base" is just a library of me. It is indeed another Typescript project's output bundle file(bundling use rollup). It is bundled as a single module, which, in later, maybe registered as a SystemJS module with name "my-base-module" because I hope users of the library treat the library as a single JS module so they can write:
import /* xx */ from "my-base-module";
Examples
As stated above, I would upload my example if it's needed.
Checklist
My suggestion meets these guidelines:
- [-] This wouldn't be a breaking change in existing TypeScript/JavaScript code
- [-] This wouldn't change the runtime behavior of existing JavaScript code
- [-] This could be implemented without emitting different JS based on the types of the expressions
- [-] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
- [-] This feature would agree with the rest of TypeScript's Design Goals.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
L’issue fournit un exemple de chemins dans tsconfig.json et un scénario de complétion de code TypeScript, mais ne nomme aucun fichier ni test du dépôt. Commencez par reproduire la complétion manquante pour Vec3 via le module bare mappé ; le travail est terminé lorsque des symboles du bundle mappé sont suggérés et que l’import utilise "my-base-module".
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- typescript
- Domaine
- developer-experience
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 28/100