找回密码
 立即注册
查看: 361|回复: 0

[前端] 最新ESLint 9.0 + Vue 3.0 + TypeScript配置指南

[复制链接]

279

主题

0

回帖

964

积分

超级版主

积分
964
发表于 2024-5-19 14:01:29 | 显示全部楼层 |阅读模式
本帖最后由 Shaw0xyz 于 2024-5-19 14:04 编辑

在现代前端开发中,使用ESLint来保证代码质量已经成为行业标准。而随着Vue 3.0和TypeScript的普及,结合这三者进行项目配置也变得尤为重要。本文将详细介绍如何在Vue 3.0项目中使用ESLint 9.0和TypeScript进行配置。


为什么要使用ESLint?

ESLint是一个用于识别和报告ECMAScript/javaScript代码中的模式匹配问题的工具。它有以下几个优势:
- 代码一致性:通过统一的代码风格规则,提高代码的一致性和可读性。
- 错误检测:早期发现代码中的潜在错误。
- 自动修复:许多问题可以通过ESLint的自动修复功能解决。

配置步骤

1. 创建Vue 3.0项目

首先,我们需要创建一个Vue 3.0项目。可以使用Vue CLI工具快速创建。

  1. npm install -g @vue/cli
  2. vue create my-vue3-project
复制代码

在选择特性时,确保选择了TypeScript支持。

2. 安装ESLint和相关插件

在项目根目录下,安装ESLint和一些必要的插件:

  1. npm install eslint eslint-plugin-vue @typescript-eslint/parser @typescript-eslint/eslint-plugin --save-dev
复制代码

3. 初始化ESLint配置

在项目根目录下创建一个`.eslintrc.js`文件,并添加以下配置:

  1. module.exports = {
  2.   root: true,
  3.   env: {
  4.     node: true,
  5.     browser: true,
  6.     es6: true,
  7.   },
  8.   parser: 'vue-eslint-parser',
  9.   parserOptions: {
  10.     parser: '@typescript-eslint/parser',
  11.     ecmaVersion: 2020,
  12.     sourceType: 'module',
  13.   },
  14.   extends: [
  15.     'eslint:recommended',
  16.     'plugin:vue/vue3-recommended',
  17.     'plugin:@typescript-eslint/recommended',
  18.   ],
  19.   rules: {
  20.     'vue/no-multiple-template-root': 'off',
  21.     '@typescript-eslint/no-explicit-any': 'off',
  22.     'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
  23.     'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
  24.   },
  25. };
复制代码

4. 配置TypeScript

在项目根目录下找到`tsconfig.json`文件,确保其中包含以下配置:

  1. {
  2.   "compilerOptions": {
  3.     "target": "esnext",
  4.     "module": "esnext",
  5.     "strict": true,
  6.     "jsx": "preserve",
  7.     "importHelpers": true,
  8.     "moduleResolution": "node",
  9.     "esModuleInterop": true,
  10.     "allowSyntheticDefaultImports": true,
  11.     "sourceMap": true,
  12.     "baseUrl": ".",
  13.     "paths": {
  14.       "@/*": ["src/*"]
  15.     },
  16.     "lib": ["esnext", "dom"]
  17.   },
  18.   "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
  19.   "exclude": ["node_modules"]
  20. }
复制代码

5. 配置VS Code的ESLint插件

为了在开发过程中获得更好的体验,我们可以配置VS Code的ESLint插件。确保你已经安装了`ESLint`插件,并在`.vscode/settings.json`中添加以下内容:

  1. {
  2.   "eslint.validate": ["javascript", "javascriptreact", "typescript", "typescriptreact", "vue"]
  3. }
复制代码

6. 运行ESLint

在项目根目录下,添加一个新的脚本命令来运行ESLint。打开`package.json`文件,找到`scripts`部分,并添加以下命令:

  1. "scripts": {
  2.   "lint": "eslint --ext .js,.ts,.vue src"
  3. }
复制代码

现在,你可以运行以下命令来检查代码:

  1. npm run lint
复制代码

7. 自动修复代码

为了更方便地修复代码中的问题,可以使用ESLint的自动修复功能。可以在终端中运行以下命令:

  1. eslint --fix --ext .js,.ts,.vue src
复制代码

测试配置

为了确保配置有效,可以创建一个包含一些常见错误和警告的示例文件,如`src/components/HelloWorld.vue`,并运行`npm run lint`来检查是否有预期的错误报告。

  1. <template>
  2.   <div>
  3.     <h1>{{ message }}</h1>
  4.   </div>
  5. </template>

  6. <script lang="ts">
  7. import { defineComponent } from 'vue';

  8. export default defineComponent({
  9.   data() {
  10.     return {
  11.       message: 'Hello World',
  12.     };
  13.   },
  14. });
  15. </script>

  16. <style scoped>
  17. h1 {
  18.   color: red;
  19. }
  20. </style>
复制代码

运行`npm run lint`,你应该会看到关于未使用的变量和其他问题的警告或错误提示。

结语

通过以上步骤,我们成功地在Vue 3.0项目中配置了最新的ESLint 9.0和TypeScript。这种配置不仅能够提升代码质量,还能提高开发效率。

荔枝学姐爱吃荔枝!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系站长|Archiver|手机版|小黑屋|主机论坛

GMT+8, 2025-4-4 13:42 , Processed in 0.051356 second(s), 24 queries .

Powered by 主机论坛 HostSsss.Com

HostSsss.Com

快速回复 返回顶部 返回列表