前言
eslint是一种代码风格管理的工具,可以制定一些代码编写规范,在vue项目中经常用到,本文就给大家分享了开发项目中使用的eslint校验规范,供参考:
示例代码
module.exports = { root: true, parserOptions: { parser: 'babel-eslint', sourceType: 'module' }, env: { browser: true, node: true, es6: true, }, extends: ['plugin:vue/essential', 'eslint:recommended'], rules: { // 等级分为三级: 0-不显示;1-显示警告warning; 2-显示错误error //////////////////// ///// vue.规范 ///// /////////////////// "vue/max-attributes-per-line": [1, { //多个特性的元素应该分多行撰写,每个特性一行 "singleline": 10, "multiline": { "max": 1, "allowFirstLine": false } }], "vue/singleline-html-element-content-newline": 0, // 在单行元素的内容前后需要换行符 "vue/multiline-html-element-content-newline": 0, // 在多行元素的内容之前和之后需要换行符 "vue/name-property-casing": [1, "PascalCase"], // JS/JSX中的组件名应该始终是帕斯卡命名法 "vue/no-v-html": 0, "vue/prop-name-casing": [1, "camelCase"], // 在声明prop的时候,其命名应该始终使用驼峰命名 "vue/require-v-for-key": 1, // 给v-for设置键值,与key结合使用,可以高效的更新虚拟DOM "vue/no-use-v-if-with-v-for": [2, { "allowUsingIterationVar": false }], // 不要把 v-if 和 v-for 用在同一个元素上——因为v-for 比 v-if 具有更高的优先级 "vue/order-in-components": [0, { // 组件/实例的选项的顺序 "order": [ "el", "name", "parent", "functional", ["delimiters", "comments"], ["components", "directives", "filters"], "extends", "mixins", "inheritAttrs", "model", ["props", "propsData"], "data", "computed", "watch", "LIFECYCLE_HOOKS", "methods", ["template", "render"], "renderError" ] }], //////////////////// ///// js.规范 ///// /////////////////// 'accessor-pairs': 2, // 在对象中强制使用getter/setter 'arrow-spacing': [2, { // 在箭头函数之前/之后需要空格 'before': true, 'after': true }], 'block-spacing': [2, 'always'], // 在打开块之后和关闭块之前,禁止或强制执行块内部的空格 'brace-style': [1, '1tbs', { // 需要大括号样式 'allowSingleLine': true }], 'camelcase': [0, { // 需要驼峰命名 'properties': 'always' }], 'comma-dangle': [2, 'never'], // 要求或禁止使用尾随逗号;最后一个属性是不需要逗号 'comma-spacing': [2, { // 强制逗号旁边的间距: 左右一个空格 'before': false, 'after': true }], 'comma-style': [2, 'last'], // 逗号风格 'constructor-super': 2, // 构建方法中使用super方法 'curly': [2, 'multi-line'], 'dot-location': [1, 'property'], // 在dot之前和之后强制换行 'eol-last': 2, // 在文件末尾要求或禁止换行 'eqeqeq': [0, "always", { "null": "ignore" }], // 是否使用全等 'generator-star-spacing': [2, { // 在生成器函数中强制执行*周围的间距 'before': true, 'after': true }], 'handle-callback-err': [1, '^(err|error)$'], // 强制执行回调错误处理 'indent': [2, 2, { // 强制执行一致的缩进 'SwitchCase': 1 }], 'jsx-quotes': [2, 'prefer-single'], // 强制在JSX文件中一致使用单引号 'key-spacing': [2, { // 在对象属性中强制键和值之间的一致间距 'beforeColon': false, 'afterColon': true }], 'keyword-spacing': [2, { // 关键字前后强制执行一致的间距 'before': true, 'after': true }], 'new-cap': [2, { // 要求构造函数名称以大写字母开头 'newIsCap': true, 'capIsNew': false }], 'new-parens': 2, // 调用不带参数的函数时需要括号 'no-array-constructor': 2, // 禁止阵列构建器 'no-caller': 2, // 禁止使用来电者/被叫者 'no-console': 'off', // 不允许使用控制台 'no-class-assign': 2, // 禁止修改类声明的变量 'no-cond-assign': 2, // 在条件语句中禁止赋值运算符 'no-const-assign': 2, // 禁止修改使用const声明的变量 'no-control-regex': 0, // 禁止正则表达式中的控制字符 'no-delete-var': 2, // 禁止删除变量 'no-dupe-args': 2, // 在函数定义中禁止重复参数 'no-dupe-class-members': 2, // 禁止在类成员中重复名称 'no-dupe-keys': 2, // 禁止对象重复声明属性 'no-duplicate-case': 2, // 规则禁止重复案例标签 'no-empty-character-class': 2, // 禁止在正则表达式中使用空字符类 'no-empty-pattern': 2, // 不允许空的解构模式 'no-eval': 2, // 禁止使用eval() 'no-ex-assign': 2, // 禁止在catch子句中重新分配异常 'no-extend-native': 2, // 禁止扩展原生对象 'no-extra-bind': 2, // 禁止不必要的功能绑定 'no-extra-boolean-cast': 2, // 禁止不必要的布尔类型转换 'no-extra-parens': [2, 'functions'], // 禁止不必要的括号 'no-fallthrough': 2, // 禁止太多陈述描述 'no-floating-decimal': 2, // 禁止浮动小数 'no-func-assign': 2, // 禁止重新分配函数声明 'no-implied-eval': 2, 'no-inner-declarations': [2, 'functions'], // 禁止嵌套块中的变量或函数声明 'no-invalid-regexp': 2, // 禁止在RegExp中使用无效的正则表达式字符串 'no-irregular-whitespace': 2, // 不允许不规则的空白 'no-iterator': 2, // 禁止迭代器 'no-label-var': 2, // 禁止变量名称的标签 'no-labels': [2, { 'allowLoop': false, 'allowSwitch': false }], 'no-lone-blocks': 2, // 禁止不必要的嵌套块 'no-mixed-spaces-and-tabs': 2, // 禁止使用混合空格和制表符进行缩进 'no-multi-spaces': 2, // 禁止多个空格 'no-multi-str': 2, // 禁止多行字符串 'no-multiple-empty-lines': [2, { // 禁止多个空行 'max': 1 }], 'no-native-reassign': 2, 'no-negated-in-lhs': 2, 'no-new-object': 2, 'no-new-require': 2, 'no-new-symbol': 2, 'no-new-wrappers': 2, 'no-obj-calls': 2, 'no-octal': 2, 'no-octal-escape': 2, 'no-path-concat': 2, 'no-proto': 2, 'no-redeclare': 2, 'no-regex-spaces': 2, 'no-return-assign': [2, 'except-parens'], 'no-self-assign': 2, 'no-self-compare': 2, 'no-sequences': 2, 'no-shadow-restricted-names': 2, 'no-spaced-func': 2, 'no-sparse-arrays': 2, 'no-this-before-super': 2, 'no-throw-literal': 2, 'no-trailing-spaces': 2, 'no-undef': 0, 'no-undef-init': 2, 'no-unexpected-multiline': 2, 'no-unmodified-loop-condition': 2, // 禁止未修改的循环条件 'no-unneeded-ternary': [2, { // 当存在更简单的替代方案时,不允许三元运算符 'defaultAssignment': false }], 'no-unreachable': 2, // 返回,抛出,继续和中断语句后禁止无法访问的代码 'no-unsafe-finally': 2, // 禁止finally块中的控制流语句 'no-unused-vars': [1, { // 禁止使用未声明的变量 'vars': 'all', 'args': 'none' }], 'no-useless-call': 2, // 禁止不必要的call()和apply()方法 'no-useless-computed-key': 2, // 禁止在对象上使用不必要的计算属性键 'no-useless-constructor': 2, // 禁止不必要的构造方法 'no-useless-escape': 0, // 禁止不必要的转义用法 'no-whitespace-before-property': 2, // 在属性之前禁止空格 'no-with': 2, 'one-var': [2, { 'initialized': 'never' }], 'operator-linebreak': [2, 'after', { // 为维护强制执行一致的换行方式 'overrides': { '"color: #ff0000">总结以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“Vue项目中ESlint规范示例代码”评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新动态
2024年11月14日
2024年11月14日
- 黑鸭子2008-今生最爱[首版][WAV+CUE]
- 彭海桐.2000-好好想想你【SONY】【WAV+CUE】
- 群星.1995-亚洲电视剧集主题曲大全·乐作剧2CD【滚石】【WAV+CUE】
- 林强.1992-春风少年兄【魔岩】【WAV+CUE】
- 世界顶级汽车音响试音王《金色的草原》24K金碟[低速原抓WAV+CUE][1G]
- 周深 /Faouzia《解密 电影原声带》[320K/MP3][39.32MB]
- 周深 /Faouzia《解密 电影原声带》[FLAC/分轨][199.46MB]
- 英雄联盟s14亚军队伍是哪支 英雄联盟s14亚军队伍介绍
- 英雄联盟s14夺冠队伍是哪支 英雄联盟s14夺冠队SKT T1队伍介绍
- faker三冠王是哪几个赛季 faker三冠王赛季介绍
- 岩贵-音乐磁场(AI调音)2CD[WAV]
- 童丽《千愁记旧情》HQII头版限量编号2024[低速原抓WAV+CUE]
- 瑞鸣十五周年纪念3[HQCD限量编号头版][低速原抓WAV+CUE]
- 任天堂专利展示新VR外设:或会随同NS继任机型推出
- 博主制作“Switch 2”模型 与现有掌机对比