Skip to content

vue

自定义组件属性名必须使用连字符命名

组件属性顺序

支持在<template>中使用注释指令

组件定义名称必须是驼峰式命名

组件顶级元素顺序必须为template, script, style

属性的位置必须一致

标签闭合括号前必须换行

标签闭合括号前必须有空格

必须使用闭合标签

模板中的缩进必须是2个空格

HTML属性必须使用双引号

强制自闭合标签风格

防止在JSX中使用的变量被标记为未使用

组件名必须是多个单词

多行元素内容前后必须换行

必须在mustache插值中统一空格

禁止在定义观察者时使用箭头函数

禁止在计算属性中使用异步操作

禁止元素的子内容被v-htmlv-text指令覆盖

禁止在data中访问计算属性

禁止在data中使用已废弃的对象声明

禁止使用已废弃的destroyedbeforeDestroy生命周期钩子(Vue.js 3.0.0+)

禁止使用已废弃的$listeners

禁止使用已废弃的$scopedSlots (在Vue.js 3.0.0+中)

禁止使用已废弃的事件API

禁止使用已废弃的functional模板

为什么?

禁止在HTML元素上使用已废弃的is属性

禁止使用已废弃的inline-template属性

禁止在props默认函数中使用已弃用的this

禁止在RouterLink上使用已弃用的tag属性

禁止使用已废弃的slot属性

为什么?

禁止使用已废弃的slot-scope属性

禁止在 v-bind 指令上使用已废弃的 .sync 修饰符 (在 Vue.js 3.0.0+)

禁止使用已废弃的v-is指令

禁止使用已废弃的.native修饰符

禁止使用已废弃的数字(键码)修饰符

禁止使用已废弃的Vue.config.keyCodes

禁止字段名重复

禁止在v-if / v-else-if链中出现重复的条件

禁止属性重复

禁止在<script setup>中使用export

禁止在await表达式后异步注册expose

禁止异步注册生命周期钩子

禁止不必要的<template>

禁止使用多个空格

禁止向作用域插槽传递多个参数

禁止修改组件的props

禁止在<template>中出现解析错误

禁止将ref()包装的值用作操作数

禁止在组件定义中使用保留名称

禁止覆盖保留关键字

禁止在props中使用保留名称

禁止在setup中解构props导致失去响应性

组件的data属性必须是一个函数

禁止在计算属性中产生副作用

禁止属性中等号两边有空格

禁止在<template>上使用key属性

禁止变量声明与外部作用域变量声明冲突

禁止在<textarea>中使用插值表达式

禁止注册模板中未使用的组件

禁止未使用的v-for指令或作用域属性的变量定义

禁止将计算属性用作方法

禁止在同一个元素上同时使用v-ifv-for

禁止在<template>上使用无用的属性

禁止在子元素上放置<template v-for>的key值

禁止使用v-html

禁止在组件上使用v-text/v-html

禁止异步注册watch

每个文件只能有一个组件

组件属性的顺序必须有序

必须从'vue'导入,而不是从'@vue/*'导入

Vue组件中的Prop名称必须使用驼峰命名法

必须在<component>元素中使用v-bind:is

必须为非必需的props设置默认值

必须在emits选项中声明$emit()触发的事件名

必须使用构造函数作为prop的类型

必须在props中定义类型

必须在render函数中返回值

必须将$slots的属性作为函数使用

必须在<transition>内部控制内容的显示

必须在v-for指令中使用v-bind:key

默认属性值必须有效

计算属性必须有返回值

必须在emits验证器中使用return语句

单行元素内容前后必须换行

禁止在模板中使用this

必须在v-on上使用exact修饰符

必须使用v-bind指令的简写形式

自定义组件的v-on事件名必须使用连字符

强制使用@指令的样式

必须使用v-slot指令的长格式

必须使用有效的属性名

强制有效的 defineEmits 编译宏

强制执行有效的 defineProps 编译器宏

必须正确使用nextTick函数

模板根元素必须有效

必须使用有效的v-bind指令

必须使用有效的v-cloak指令

必须将else-if放在if后面

必须将v-else放在最后

v-for指令必须有效

v-html指令必须有效

v-if指令必须有效

v-is指令必须有效

必须使用有效的v-memo指令

必须使用有效的v-model指令

必须使用有效的v-on指令

必须使用有效的v-once指令

必须使用有效的v-pre指令

v-show指令必须有效

v-slot指令必须有效

强制使用有效的v-text指令