Appearance
vue/define-macros-order
强制编译器宏的顺序(
defineProps
、defineEmits
等)
- 🔧 command line 上的
--fix
选项可以自动修复此规则报告的一些问题。
💡此规则报告的某些问题可以通过编辑器 suggestions 手动修复。
¥💡 Some problems reported by this rule are manually fixable by editor suggestions.
📖 规则详情
当编译器宏(如 defineProps
或 defineEmits
,但也包括自定义宏)不是 <script setup>
中的第一个语句(在任何潜在的导入语句或类型定义之后)或顺序不正确时,此规则会报告它们。
¥This rule reports compiler macros (like defineProps
or defineEmits
but also custom ones) when they are not the first statements in <script setup>
(after any potential import statements or type definitions) or when they are not in the correct order.
🔧选项
¥🔧 Options
json
{
"vue/define-macros-order": ["error", {
"order": ["defineProps", "defineEmits"],
"defineExposeLast": false
}]
}
order
(string[]
) ...宏应出现的顺序。默认为["defineProps", "defineEmits"]
。¥
order
(string[]
) ... The order in which the macros should appear. The default is["defineProps", "defineEmits"]
.defineExposeLast
(boolean
) ...在末尾强制使用defineExpose
。¥
defineExposeLast
(boolean
) ... ForcedefineExpose
at the end.
{ "order": ["defineProps", "defineEmits"] }
(默认)
¥{ "order": ["defineProps", "defineEmits"] }
(default)
{ "order": ["defineOptions", "defineModel", "defineProps", "defineEmits", "defineSlots"] }
{ "order": ["definePage", "defineModel", "defineCustom", "defineEmits", "defineSlots"] }
{ "defineExposeLast": true }
🚀版本
¥🚀 Version
此规则在 eslint-plugin-vue v8.7.0 中引入
¥This rule was introduced in eslint-plugin-vue v8.7.0
🔍代码实现
¥🔍 Implementation