vue/valid-define-emits
enforce valid
defineEmits
compiler macro
- ⚙️ This rule is included in all of
"plugin:vue/vue3-essential"
,*.configs["flat/essential"]
,"plugin:vue/essential"
,*.configs["flat/vue2-essential"]
,"plugin:vue/vue3-strongly-recommended"
,*.configs["flat/strongly-recommended"]
,"plugin:vue/strongly-recommended"
,*.configs["flat/vue2-strongly-recommended"]
,"plugin:vue/vue3-recommended"
,*.configs["flat/recommended"]
,"plugin:vue/recommended"
and*.configs["flat/vue2-recommended"]
.
This rule checks whether defineEmits
compiler macro is valid.
📖 Rule Details
This rule reports defineEmits
compiler macros in the following cases:
defineEmits
is referencing locally declared variables.defineEmits
has both a literal type and an argument. e.g.defineEmits<(e: 'foo')=>void>(['bar'])
defineEmits
has been called multiple times.- Custom events are defined in both
defineEmits
andexport default {}
. - Custom events are not defined in either
defineEmits
orexport default {}
.
🔧 Options
Nothing.
👫 Related Rules
🚀 Version
This rule was introduced in eslint-plugin-vue v7.13.0