【ESLint】在 TypeScript + Vue 项目中配合 Prettier 使用 ESLint

在 TypeScript + Vue 项目中配合 Prettier 使用 ESLint

在软件开发中,编码风格是一种规范化的约定,用于定义代码的格式,样式和结构。统一编码风格有以下几点好处:

  1. 提高代码可读性:统一的编码风格使代码更易读,减少了代码的歧义和误解。
  2. 方便合作开发:当多个开发人员在同一个项目中工作时,统一编码风格可以减少代码的冲突和错误,提高协作开发的效率。
  3. 降低维护成本:在软件开发过程中,代码需要经常进行维护和修改。如果使用统一的编码风格,可以减少维护成本并提高代码的可维护性。
  4. 提高代码质量:统一编码风格可以强制执行一些最佳实践,例如代码注释和排版等,可以提高代码的质量。

我使用的是《阿里巴巴前端规约》配套的 ESLint 可共享配置

ESLint 规则包请参见 《阿里巴巴前端规约》

依赖

安装

npm i -D eslint-config-ali @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-plugin-import eslint-import-resolver-typescript vue-eslint-parser eslint-plugin-vue prettier eslint-config-prettier eslint-plugin-prettier

配置

创建 .eslintrc 文件

{
  "extends": ["eslint-config-ali/typescript/vue", "prettier"]
}

创建 .prettierrc 文件

{
  "trailingComma": "es5",
  "tabWidth": 4,
  "semi": false,
  "singleQuote": true
}

用 Prettier 格式化所有文件

npx prettier --write .

针对 Vue 配置的 Prettier

我的配置

{
  "printWidth": 100,
  "tabWidth": 2,
  "semi": true,
  "singleQuote": true,
  "trailingComma": "all",
  "arrowParens": "always",
  "singleAttributePerLine": true,
  "vueIndentScriptAndStyle": true,
  "htmlWhitespaceSensitivity": "ignore"
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue 项目使用 TypeScript,可以通过配置 TSLint 来进行代码规范和类型检查。以下是一些设置 TSLint 的经验总结: 1. 安装依赖 ``` npm install --save-dev tslint tslint-config-prettier tslint-plugin-prettier tslint-eslint-rules typescript ``` 2. 配置 TSLint 在项目根目录下创建 tslint.json 文件,并添加以下内容: ``` { "extends": [ "tslint:recommended", "tslint-config-prettier" ], "rules": { "interface-name": false, "no-console": false, "no-empty": false, "no-unused-expression": false, "no-unused-variable": false, "semicolon": [true, "always"] }, "linterOptions": { "exclude": [ "node_modules/**", "dist/**" ] } } ``` 以上配置文件的含义: - extends:继承的规则,含了 TSLint 推荐的规则和 Prettier 的规则。 - rules:自定义的规则,可以根据团队的需求进行配置。 - linterOptions:指定需要忽略的文件或目录。 3. 配置 VS Code 在 VS Code 安装以下插件: - TSLint - Prettier - Code formatter 然后在项目根目录下创建 .prettierrc 文件,并添加以下内容: ``` { "singleQuote": true, "trailingComma": "es5", "semi": true, "tabWidth": 2 } ``` 最后,在 VS Code 的设置添加以下配置: ``` { "editor.formatOnSave": true, "vetur.validation.template": false, "prettier.eslintIntegration": true, "eslint.validate": [ "javascript", "javascriptreact", "vue", "typescript" ], "typescript.validate.enable": false, "tslint.enable": true } ``` 以上配置的含义: - editor.formatOnSave:在保存时自动格式化代码。 - vetur.validation.template:禁止 Vetur 对模板的验证,因为它可能与 TSLint 发生冲突。 - prettier.eslintIntegration:启用 PrettierESLint 的集成。 - eslint.validate:指定需要验证的文件类型。 - typescript.validate.enable:禁止 VS Code 内置的 TypeScript 验证器,因为它可能与 TSLint 发生冲突。 - tslint.enable:启用 TSLint 验证器。 4. 迁移经验 如果是一个已经存在的 Vue 项目,需要将 JavaScript 代码迁移到 TypeScript,可以按照以下步骤进行: - 安装 TypeScript 和 @types/node - 将 .js 文件改名为 .ts 文件,并修改文件的代码 - 在 Vue 组件添加 <script lang="ts"> 标签,并将代码移到其 - 逐步修改代码,添加类型注解和接口定义 需要注意的是,迁移过程可能会遇到一些问题,例如: - 无法识别某些模块,需要在 tsconfig.json 配置 paths - 需要安装额外的类型声明文件,例如 @types/vue、@types/lodash 等 - 一些 JavaScript 的语法不支持 TypeScript,需要进行调整 总之,迁移过程需要耐心和谨慎,可以先从一些简单的模块开始,逐步迁移。同时,使用 TSLint 和 VS Code 可以帮助我们更方便地进行代码规范和类型检查。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值