microsoft / microsoft/TypeScript
Document how to use tsconfig-related APIs in the wiki
Personne n'a encore pris cette issue.
- Langage dominant
- Go
- Étoiles
- 111k
- Forks
- 14.4k
- Merge moyen
- 1 j 19 h
- PR mergées (30 j)
- 117
Description
🔎 Search Terms
"createProgram" "compiler" "compiler api" "js files createProgram" "js compiler api" "js files compiler" "programmatic compiler js"
🕗 Version & Regression Information
Give my project:
my-project/
├─ src/
│ ├─ index.js
├─ tsconfig.json
The following code:
import ts from 'typescript';
let tsConfigFile = ts.findConfigFile(
process.cwd(),
ts.sys.fileExists,
"tsconfig.json"
);
const { config } = ts.readConfigFile(tsConfigFile, ts.sys.readFile);
const program = ts.createProgram(['src/index.js'], config);
program.getSourceFiles().forEach((sf) => {
console.log(1, sf.fileName);
});
Where tsconfig.json looks like:
{
"compilerOptions": {
"strict": true,
"outDir": "./dist-types",
"target": "ESNext",
"allowSyntheticDefaultImports": true,
"moduleResolution": "NodeNext",
"module": "NodeNext",
"lib": ["ESNext", "DOM"],
"declaration": true,
"emitDeclarationOnly": true,
"allowJs": true,
"checkJs": true,
"skipLibCheck": true,
"verbatimModuleSyntax": true
},
"include": [
"src/index.js"
],
"exclude": ["node_modules"],
}
Outputs:
1 /Users/au87xu/cem-typescript-issue/node_modules/typescript/lib/lib.d.ts
1 /Users/au87xu/cem-typescript-issue/node_modules/typescript/lib/lib.es5.d.ts
1 /Users/au87xu/cem-typescript-issue/node_modules/typescript/lib/lib.dom.d.ts
1 /Users/au87xu/cem-typescript-issue/node_modules/typescript/lib/lib.webworker.importscripts.d.ts
1 /Users/au87xu/cem-typescript-issue/node_modules/typescript/lib/lib.scripthost.d.ts
1 /Users/au87xu/cem-typescript-issue/node_modules/typescript/lib/lib.decorators.d.ts
1 /Users/au87xu/cem-typescript-issue/node_modules/typescript/lib/lib.decorators.legacy.d.ts
but src/index.js is missing from the source files. I feel like this did work in the past, or at least should work on regular js files as well.
⏯ Playground Link
n/a
💻 Code
// Your code here
🙁 Actual behavior
ts.createProgram does not include src/index.js
🙂 Expected behavior
ts.createProgram does include src/index.js
Additional information about the issue
No response
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
Commencez par l’exemple de createProgram de l’issue et les APIs liées à tsconfig qui y sont référencées, notamment findConfigFile et readConfigFile. Documentez dans le wiki comment ces APIs doivent être utilisées avec des fichiers JavaScript, y compris le comportement observé des fichiers source ; le travail est terminé lorsque l’utilisation pertinente et le comportement attendu sont clairs pour les lecteurs.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, typescript
- Domaine
- documentation
- Type d'issue
- Documentation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100