J'ai un gros projet et je souhaite commencer à migrer vers Typescript un composant à la fois.
J'ai essayé --with-typescript mais cela m'oblige à renommer tous les fichiers à la fois. Je voudrais convertir lentement en veillant à ce que les fichiers non convertis conservent leur extension initiale tandis que les nouveaux fichiers adoptent des extensions de fichier tapuscrit.
Comment puis-je m'y prendre avec razzle?
Hé, j'ai également du mal à faire fonctionner l'exemple with-typescript
avec des fichiers jsx
pour permettre la migration progressive des projets existants.
Est-ce que quelqu'un a une idée de comment archiver cet objectif ?
Deviner!
npm i -D @babel/preset-typescript ts-loader typescript
Ajouter @babel/typescript
à .babelrc
"presets": [
"razzle/babel",
"@babel/typescript"
]
Ajoutez ceci à razzle.config.js
config.resolve.extensions = config.resolve.extensions.concat(['.ts', '.tsx']);
config.module.rules.push({ test: /\.tsx?$/, loader: 'ts-loader' });
Créer un tsconfig.json
{
"compilerOptions": {
"experimentalDecorators": true,
// Target latest version of ECMAScript.
"target": "esnext",
// Search under node_modules for non-relative imports.
"moduleResolution": "node",
// Process & infer types from .js files.
"allowJs": false,
// Enable strictest settings like strictNullChecks & noImplicitAny.
"strict": false,
// Disallow features that require cross-file information for emit.
"isolatedModules": true,
// Import non-ES modules as default imports.
"esModuleInterop": true,
"jsx": "react"
},
"include": [
"src"
],
"exclude": [
"node_modules",
]
}
C'est tout, maintenant vous pouvez renommer les extensions en .ts et .tsx pour activer le script dactylographié pour ces fichiers.
Si vous venez du futur, découvrez le super plugin dactylographié pris en charge par razzle ici .
Commentaire le plus utile
Deviner!
npm i -D @babel/preset-typescript ts-loader typescript
Ajouter
@babel/typescript
à .babelrcAjoutez ceci à razzle.config.js
Créer un tsconfig.json
C'est tout, maintenant vous pouvez renommer les extensions en .ts et .tsx pour activer le script dactylographié pour ces fichiers.