项目代码标准化

eslint偏向于把控项目js、ts、vue等代码的质量;prettier偏向于js、ts、vue的代码风格;stylelint偏向于把控css代码风格的统一。

使用eslint

  • 初始化配置文件

    eslint init ->生成.eslintrc.js
    module.exports = {
    "env": {
    "browser": true,
    "es2021": true,
    "node": true
    },
    // eslint-config-xx,xx前的可以省略掉
    "extends":[
    "eslint:recommended",
    "plugin:vue/vue3-essential",
    "plugin:@typescript-eslint/recommended"
    ],
    //解析器,将代码转化成抽象语法树,然后由eslint等对树进行检查
    parser:"@typescript-eslint/parser",
    parserOptions:{
    ...
    },
    // 全局定义的宏,定义一些全局变量,使用时就会不报错
    global: {
    defineProps: "readonly"
    },
    // eslint-plugin可以省略
    plugins: ["vue", "@typescript-eslint"],
    settings{
    "import/resolver": {
    // 设置项目内别名
    alias:{
    map:[["@","./src"]]
    }
    },
    // 允许的扩展名
    "import/extensions":[".js",".jsx",".ts"]
    },
    rules:{
    // 自定义规则,覆盖extends中的第三方库的规则
    }
    }

使用prettier

  • 配置文件

    在根目录新建prettierrc.cjs文件
    module.exports= {
    // 一行最多多少个字符
    printWidth:80,
    // 使用2个空格缩进
    tabWidth:2,
    // 结尾是否需要分号
    semi: true,
    // 使用单引号
    singleQuote: true
    }

使用stylelint

  • 配置文件

    // 根目录新建.stylelintrc.cjs
    module.exports = {
    extends: [
    "stylelint-config-standard"
    ]
    }


相关推荐
码路飞3 分钟前
热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖
java·javascript
前端Hardy32 分钟前
别再忽略 Promise 拒绝了!你的 Node.js 服务正在“静默自杀”
前端·javascript·面试
前端Hardy34 分钟前
别再被setTimeout闭包坑了!90% 的人都写错过这个经典循环
前端·javascript·vue.js
小林coding40 分钟前
专为程序员打造的简历模版来啦!覆盖前端、后端、测开、大模型等专业简历
前端·后端
前端Hardy40 分钟前
你的 Vue 组件正在偷偷吃掉内存!5 个常见的内存泄漏陷阱与修复方案
前端·javascript·面试
RaidenLiu1 小时前
Flutter Platform Channel 底层架构解析 —— 从 BinaryMessenger 到跨平台消息通信机制
前端·flutter·前端框架
bluceli1 小时前
CSS容器查询:响应式设计的新范式
前端·css
Tapir1 小时前
被 Karpathy 下场推荐的 NanoClaw 是什么来头
前端·后端·github
前端人类学1 小时前
深入解析JavaScript中的null与undefined:区别、用法及判断技巧
前端·javascript
ssshooter2 小时前
Tauri 项目实践:客户端与 Web 端的授权登录实现方案
前端·后端·rust