JS.VUE.VALID.V.ON
Enforce valid 'v-on' directives
This rule checks whether every v-on
directive is valid.
Rule Details
This rule reports v-on
directives in the following cases:
- The directive does not have that event name. E.g.
<div v-on="foo"></div>
- The directive has invalid modifiers. E.g.
<div v-on:click.bbb="foo"></div>
- The directive does not have that attribute value and any verb modifiers. E.g.
<div v-on:click></div>
{'vue/valid-v-on': ['error']}
Copy
<template>
<!-- GOOD -->
<div v-on="foo"/>
<div v-on:click="foo"/>
<div @click="foo"/>
<div @click.left="foo"/>
<div @click.prevent/>
<div @click.stop/>
<!-- BAD -->
<div v-on/>
<div v-on:click/>
<div v-on:click.aaa="foo"/>
<div @click/>
</template>
This rule does not check syntax errors in directives because it's checked by no-parsing-error
rule.
Options
Copy
{
"vue/valid-v-on": ["error", {
"modifiers": []
}]
}
This rule has an object option:
"modifiers"
array of additional allowed modifiers.
"modifiers": ["foo"]
{'vue/valid-v-on': ['error', { modifiers: ['foo']}]}
Copy
<template>
<div @click.foo="foo"/>
<div v-on:click.foo="foo"/>
</template>