• eslint+prettier 配置


    eslint   代码规范和错误检查工具

    1,安装eslint

    npm install eslint --save-dev

    2,eslint 配置文件

    npm init @eslint/config

    以上两步按照完成后,eslint 即完成
     

    prettieer  代码格式化工具

    eslint-config-prettier
     

    第一:package.json

    1. {
    2. "name": "testEslinPrettier",
    3. "uuid": "9b01ebaa-4170-4ca9-ac41-f2f9f0b527b6",
    4. "version": "3.5.0",
    5. "creator": {
    6. "version": "3.5.0"
    7. },
    8. "devDependencies": {
    9. "@typescript-eslint/eslint-plugin": "^5.25.0",
    10. "@typescript-eslint/parser": "^5.25.0",
    11. "eslint": "^8.16.0",
    12. "eslint-config-prettier": "^8.5.0",
    13. "eslint-plugin-prettier": "^4.0.0",
    14. "prettier": "2.6.2"
    15. }
    16. }

    第二:.eslintrc.js

    1. module.exports = {
    2. env: {
    3. browser: true,
    4. es2021: true,
    5. node: true,
    6. },
    7. extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'],
    8. parser: '@typescript-eslint/parser',
    9. parserOptions: {
    10. ecmaVersion: 'latest',
    11. sourceType: 'module',
    12. ecmaFeatures: {
    13. impliedStrict: true,
    14. },
    15. },
    16. plugins: ['@typescript-eslint', 'prettier'],
    17. rules: {
    18. 'max-len': ['error', { code: 80, ignoreUrls: true }],
    19. curly: ['error', 'all'],
    20. indent: 'error',
    21. 'prettier/prettier': 'error',
    22. '@typescript-eslint/no-unused-vars': 'error',
    23. '@typescript-eslint/no-empty-function': 'off',
    24. '@typescript-eslint/no-inferrable-types': 'off',
    25. '@typescript-eslint/explicit-function-return-type': [
    26. 'error',
    27. {
    28. allowExpressions: true,
    29. },
    30. ],
    31. '@typescript-eslint/explicit-member-accessibility': 'off',
    32. '@typescript-eslint/no-non-null-assertion': 'off',
    33. '@typescript-eslint/camelcase': 'off',
    34. '@typescript-eslint/no-var-requires': 'off',
    35. '@typescript-eslint/no-explicit-any': 'off',
    36. 'no-console': 'off',
    37. '@typescript-eslint/indent': ['off', 4, { SwitchCase: 1 }],
    38. 'no-prototype-builtins': 'off',
    39. },
    40. };

    第三:.prettierrc.json

    vscode配置prettier格式化工具 - 百度文库

    1. {
    2. "printWidth": 100,
    3. "overrides": [
    4. {
    5. "files": ".prettierrc",
    6. "options": {
    7. "parser": "json"
    8. }
    9. }
    10. ],
    11. "tabWidth": 4,
    12. "useTabs": false,
    13. "semi": true,
    14. "singleQuote": true,
    15. "proseWrap": "preserve",
    16. "arrowParens": "avoid",
    17. "bracketSpacing": true,
    18. "disableLanguages": [
    19. "vue"
    20. ],
    21. "endOfLine": "auto",
    22. "eslintIntegration": false,
    23. "htmlWhitespaceSensitivity": "ignore",
    24. "ignorePath": ".prettierignore",
    25. "requireConfig": false,
    26. "stylelintIntegration": false,
    27. "trailingComma": "es5"
    28. }

    第四:ignore 文件
    .eslintignore
    .prettierignore
    .gitignore

    总结:

    1,先按照eslint =》 npm install eslint --save-dev
    2,创建eslintrc.js  => npm init @eslint/config     根据命令提示选择对应的选项 完成后悔自动配置好
    3,vscod

    1. /********* eslint 配置 *********/
    2. "eslint.alwaysShowStatus": true,
    3. "eslint.options": {
    4. "extensions": [
    5. ".js",
    6. ".ts"
    7. ]
    8. },
    9. "eslint.validate": [
    10. "typescript",
    11. "javascript"
    12. ],
    13. "eslint.format.enable": true,
    14. "vetur.format.defaultFormatter.ts": "prettier-tslint",

    ----------------------------------------------------------------------------------
    1,安装prettier    npm install prettier
    2,配置prettierrc.json  
    3,vscode GitHub - prettier/prettier-vscode: Visual Studio Code extension for Prettier
    4,使用prettier 的格式化规则覆盖 eslint  
    eslint 配置中 plugins    =》 plugins: ['@typescript-eslint', 'prettier']
    5,vscode 中开启prettier

     

     参考资料:
    eslint 官网:GitHub - eslint/eslint: Find and fix problems in your JavaScript code.
    prettier官网:Editor Integration · Prettier
    eslint-config-prettier:
    eslint-plugin-prettier

    代码错误提示使用 eslint,格式化使用 prettier。

  • 相关阅读:
    CPU 飙高问题排查和解决方法
    电脑重装系统后台式电脑网卡坏了怎么修复
    传统三维重建和深度学习三维重建 MVS笔记总结、问题总结
    网络编程详解
    拉线位移传感器的输出信号分为几种,小编让大家明白
    Python机器视觉--OpenCV进阶(核心)--滤波器之卷积介绍
    状态管理库-vuex
    Flir Blackfly S 工业相机:自动曝光配置及代码
    【BookStack】搭建 BookStack(docker)的记录
    C语言趣味代码(一)
  • 原文地址:https://blog.csdn.net/z1067832450_/article/details/124914116