项目代码标准化

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"
    ]
    }


相关推荐
渔舟唱晚@1 小时前
大模型数据流处理实战:Vue+NDJSON的Markdown安全渲染架构
vue.js·大模型·数据流
crary,记忆2 小时前
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
前端·webpack·angular·angular.js
漂流瓶jz2 小时前
让数据"流动"起来!Node.js实现流式渲染/流式传输与背后的HTTP原理
前端·javascript·node.js
SamHou03 小时前
手把手 CSS 盒子模型——从零开始的奶奶级 Web 开发教程2
前端·css·web
我不吃饼干3 小时前
从 Vue3 源码中了解你所不知道的 never
前端·typescript
开航母的李大3 小时前
【中间件】Web服务、消息队列、缓存与微服务治理:Nginx、Kafka、Redis、Nacos 详解
前端·redis·nginx·缓存·微服务·kafka
Bruk.Liu3 小时前
《Minio 分片上传实现(基于Spring Boot)》
前端·spring boot·minio
鱼樱前端4 小时前
Vue3+d3-cloud+d3-scale+d3-scale-chromatic实现词云组件
前端·javascript·vue.js
q_19132846954 小时前
基于Springboot+Vue的办公管理系统
java·vue.js·spring boot·后端·intellij idea
coding随想4 小时前
JavaScript中的原始值包装类型:让基本类型也能“变身”对象
开发语言·javascript·ecmascript