У меня большой проект, и я хочу начать переход на Typescript по одному компоненту.
Я пробовал --with-typescript, но для этого мне нужно переименовать все файлы сразу. Я хотел бы конвертировать медленно, чтобы непреобразованные файлы сохраняли свое начальное расширение, в то время как новые файлы принимали расширения файлов машинописного текста.
Как мне сделать это в рассудке?
Привет, я также столкнулся с трудностями, пытаясь заставить пример with-typescript
работать с файлами jsx
чтобы обеспечить постепенную миграцию существующих проектов.
Есть у кого-нибудь идеи, как заархивировать эту цель?
Догадаться!
npm i -D @babel/preset-typescript ts-loader typescript
Добавить @babel/typescript
в .babelrc
"presets": [
"razzle/babel",
"@babel/typescript"
]
Добавьте это в razzle.config.js
config.resolve.extensions = config.resolve.extensions.concat(['.ts', '.tsx']);
config.module.rules.push({ test: /\.tsx?$/, loader: 'ts-loader' });
Создайте 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",
]
}
Вот и все, теперь вы можете переименовывать расширения в .ts и .tsx, чтобы включить машинный текст для этих файлов.
Если вы пришли сюда из будущего, проверка большой кутерьмы поддерживается машинопись плагина здесь .
Самый полезный комментарий
Догадаться!
npm i -D @babel/preset-typescript ts-loader typescript
Добавить
@babel/typescript
в .babelrcДобавьте это в razzle.config.js
Создайте tsconfig.json
Вот и все, теперь вы можете переименовывать расширения в .ts и .tsx, чтобы включить машинный текст для этих файлов.