Appearance
自定义组件属性名必须使用连字符命名
组件属性顺序
支持在<template>中使用注释指令
<template>
组件定义名称必须是驼峰式命名
组件顶级元素顺序必须为template, script, style
属性的位置必须一致
标签闭合括号前必须换行
标签闭合括号前必须有空格
必须使用闭合标签
模板中的缩进必须是2个空格
HTML属性必须使用双引号
强制自闭合标签风格
防止在JSX中使用的变量被标记为未使用
组件名必须是多个单词
多行元素内容前后必须换行
必须在mustache插值中统一空格
禁止在定义观察者时使用箭头函数
禁止在计算属性中使用异步操作
禁止元素的子内容被v-html或v-text指令覆盖
v-html
v-text
禁止在data中访问计算属性
data
禁止在data中使用已废弃的对象声明
禁止使用已废弃的destroyed和beforeDestroy生命周期钩子(Vue.js 3.0.0+)
destroyed
beforeDestroy
禁止使用已废弃的$listeners
$listeners
禁止使用已废弃的$scopedSlots (在Vue.js 3.0.0+中)
$scopedSlots
禁止使用已废弃的事件API
禁止使用已废弃的functional模板
functional
为什么?
禁止在HTML元素上使用已废弃的is属性
is
禁止使用已废弃的inline-template属性
inline-template
禁止在props默认函数中使用已弃用的this
this
禁止在RouterLink上使用已弃用的tag属性
RouterLink
tag
禁止使用已废弃的slot属性
slot
禁止使用已废弃的slot-scope属性
slot-scope
禁止在 v-bind 指令上使用已废弃的 .sync 修饰符 (在 Vue.js 3.0.0+)
v-bind
.sync
禁止使用已废弃的v-is指令
v-is
禁止使用已废弃的.native修饰符
.native
禁止使用已废弃的数字(键码)修饰符
禁止使用已废弃的Vue.config.keyCodes
Vue.config.keyCodes
禁止字段名重复
禁止在v-if / v-else-if链中出现重复的条件
v-if
v-else-if
禁止属性重复
禁止在<script setup>中使用export
<script setup>
export
禁止在await表达式后异步注册expose
expose
禁止异步注册生命周期钩子
禁止不必要的<template>
禁止使用多个空格
禁止向作用域插槽传递多个参数
禁止修改组件的props
禁止在<template>中出现解析错误
禁止将ref()包装的值用作操作数
ref()
禁止在组件定义中使用保留名称
禁止覆盖保留关键字
禁止在props中使用保留名称
禁止在setup中解构props导致失去响应性
setup
props
组件的data属性必须是一个函数
禁止在计算属性中产生副作用
禁止属性中等号两边有空格
禁止在<template>上使用key属性
key
禁止变量声明与外部作用域变量声明冲突
禁止在<textarea>中使用插值表达式
<textarea>
禁止注册模板中未使用的组件
禁止未使用的v-for指令或作用域属性的变量定义
禁止将计算属性用作方法
禁止在同一个元素上同时使用v-if和v-for
v-for
禁止在<template>上使用无用的属性
禁止在子元素上放置<template v-for>的key值
<template v-for>
禁止使用v-html
禁止在组件上使用v-text/v-html
禁止异步注册watch
watch
每个文件只能有一个组件
组件属性的顺序必须有序
必须从'vue'导入,而不是从'@vue/*'导入
Vue组件中的Prop名称必须使用驼峰命名法
必须在<component>元素中使用v-bind:is
<component>
v-bind:is
必须为非必需的props设置默认值
必须在emits选项中声明$emit()触发的事件名
emits
$emit()
必须使用构造函数作为prop的类型
必须在props中定义类型
必须在render函数中返回值
必须将$slots的属性作为函数使用
$slots
必须在<transition>内部控制内容的显示
<transition>
必须在v-for指令中使用v-bind:key
v-bind:key
默认属性值必须有效
计算属性必须有返回值
必须在emits验证器中使用return语句
单行元素内容前后必须换行
禁止在模板中使用this
必须在v-on上使用exact修饰符
必须使用v-bind指令的简写形式
自定义组件的v-on事件名必须使用连字符
强制使用@指令的样式
@
必须使用v-slot指令的长格式
必须使用有效的属性名
强制有效的 defineEmits 编译宏
defineEmits
强制执行有效的 defineProps 编译器宏
defineProps
必须正确使用nextTick函数
nextTick
模板根元素必须有效
必须使用有效的v-bind指令
必须使用有效的v-cloak指令
v-cloak
必须将else-if放在if后面
else-if
if
必须将v-else放在最后
v-else
v-for指令必须有效
v-html指令必须有效
v-if指令必须有效
v-is指令必须有效
必须使用有效的v-memo指令
v-memo
必须使用有效的v-model指令
v-model
必须使用有效的v-on指令
v-on
必须使用有效的v-once指令
v-once
必须使用有效的v-pre指令
v-pre
v-show指令必须有效
v-show
v-slot指令必须有效
v-slot
强制使用有效的v-text指令