缘由vue
typescript-eslintnode
npm i eslint npm i typescript-eslint/eslint-plugin // 识别ts的特殊语法 npm i typescript-eslint/parser // 为eslint提供解析器
// package.json { "script": { "lint": "eslint src --ext .js,.ts" "test": "jest" } } // .eslintrc.json { "parser": "typescript-eslint/parser", // 为eslint指定解析器、 "plugins": ["@typescript-eslint"], // 指定插件 "parserOptions": { "project": "./tsconfig.json", // 有一些规则是要使用类型信息的 } // 能够利用tsconfig里面的类型信息 "extends": [ "plugin:@typescript-eslint/recommended", // 能够指定规则,官方推荐 ], "rules": { "@typescript-eslint/no-inferrable-types": "off" } } }
除了使用脚本,能够按照eslint插件辅助开发 vscode > eslintreact
babel-eslint和typescript-eslinttypescript
ts-jest和babel-jestnpm
// ts-jest - npm i jest ts-jest -D - npx ts-jest config:init // jest.config.js module.exports = { preset: 'ts-jest', testEnvironment: 'node' }
// babel-jest npm i -D jest babel-jest @types/jest @types/node // 只编译,不进行类型检查,类型检查须要启动单独的脚本; npm run type-check