javascript - 将 Typescript 添加到现有的 Node/Express Javascript 应用程序
问题描述
我只是将 Typescript 添加到我们的 Node / Express 后端。我有现有的 ESLint 设置,但在添加 Typescript 后,它现在会导致 linting.js
文件出现问题,实际上我的.js
文件不再有错误。
目标是慢慢地将现有.js
文件移动到.ts
但项目大小和我当前的带宽不能一次完成所有操作。因此,我对使用 Typescript 的任何新事物都采取了缓慢的方法,每当我接触到一段旧代码时,也会在 Typescript 中重写它。
任何帮助,将不胜感激。
我的.eslintrc.json
{
"extends": ["airbnb", "prettier"],
"plugins": ["prettier"],
"rules": {
"prettier/prettier": ["error"],
"no-console": "off",
"comma-dangle": "error",
"semi": "error"
},
"overrides": {
"files": ["*.ts", "*.tsx"],
"extends": ["airbnb", "prettier", "airbnb-typescript", "prettier/@typescript-eslint"],
"plugins": ["prettier", "@typescript-eslint"],
"parser": "@typescript-eslint/parser",
}
}
我也有.pretierrc
{
"tabWidth": 2,
"printWidth": 200,
"singleQuote": true,
"endOfLine": "lf",
"trailingComma": "all"
}
这是我的开发依赖项package.json
"devDependencies": {
"@types/bluebird": "^3.5.33",
"@types/body-parser": "^1.19.0",
"@types/chai": "^4.2.14",
"@types/dotenv": "^8.2.0",
"@types/express": "^4.17.11",
"@types/mocha": "^8.2.0",
"@types/mongoose": "^5.10.3",
"@types/supertest": "^2.0.10",
"@typescript-eslint/eslint-plugin": "^4.14.2",
"@typescript-eslint/parser": "^4.14.2",
"chai": "^4.3.0",
"chai-http": "^4.3.0",
"dotenv": "^8.2.0",
"eslint": "^7.19.0",
"eslint-config-airbnb": "^18.2.1",
"eslint-config-airbnb-base": "^14.2.1",
"eslint-config-prettier": "^7.2.0",
"eslint-config-standard": "^16.0.2",
"eslint-import-resolver-alias": "^1.1.2",
"eslint-plugin-async-await": "0.0.0",
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-jsx-a11y": "^6.4.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^3.3.1",
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^5.0.0",
"link-module-alias": "^1.2.0",
"lint-staged": "^10.0.8",
"mocha": "^8.2.1",
"mockgoose": "^8.0.4",
"nodemon": "^2.0.7",
"nyc": "^15.1.0",
"pre-commit": "^1.2.2",
"prettier": "^2.2.1",
"sinon": "^9.2.0",
"supertest": "^6.1.3",
"ts-node": "^9.1.1",
"tsconfig-paths": "^3.9.0",
"typescript": "^4.1.3"
}
解决方案
你可以告诉你 ESLint 通过创建一个文件来忽略所有的 JavaScript 文件.eslintignore
,它的工作方式与gitignore
.
例如:您.eslintignore
可能看起来像:
build/*.js
model/*.js
不要忘记重新启动编辑器。
推荐阅读
- php - 如何让 Psalm 在 PHP 中推断出 100% 的代码库
- php - 如何使用 php 更改另一个用户会话
- java - 如何使用 Amplify 和 Android 注册用户并添加属性
- python-pptx - python-pptx - 无法更新一个数据点的数据标签文本
- android - 在我的 android 应用程序显示启动屏幕之前的极长延迟
- java - 将泛型类型转换为对象
- android - Android 使用 Splash Screen 加载繁重的 Main 数据
- multithreading - 从线程获取返回值,这个 Kotlin 代码线程安全吗?
- python - api请求的初学者异步/等待问题
- html - 颤振中的HTML所见即所得编辑器?