@@ -24,7 +24,18 @@ module.exports = {
2424 url : 'https://eslint.vuejs.org/rules/valid-v-else-if.html'
2525 } ,
2626 fixable : null ,
27- schema : [ ]
27+ schema : [ ] ,
28+ messages : {
29+ missingVIf :
30+ "'v-else-if' directives require being preceded by the element which has a 'v-if' or 'v-else-if' directive." ,
31+ withVIf :
32+ "'v-else-if' and 'v-if' directives can't exist on the same element." ,
33+ withVElse :
34+ "'v-else-if' and 'v-else' directives can't exist on the same element." ,
35+ unexpectedArgument : "'v-else-if' directives require no argument." ,
36+ unexpectedModifier : "'v-else-if' directives require no modifier." ,
37+ expectedValue : "'v-else-if' directives require that attribute value."
38+ }
2839 } ,
2940 /** @param {RuleContext } context */
3041 create ( context ) {
@@ -36,46 +47,41 @@ module.exports = {
3647 if ( ! utils . prevElementHasIf ( element ) ) {
3748 context . report ( {
3849 node,
39- loc : node . loc ,
40- message :
41- "'v-else-if' directives require being preceded by the element which has a 'v-if' or 'v-else-if' directive."
50+ messageId : 'missingVIf'
4251 } )
4352 }
4453 if ( utils . hasDirective ( element , 'if' ) ) {
4554 context . report ( {
4655 node,
47- loc : node . loc ,
48- message :
49- "'v-else-if' and 'v-if' directives can't exist on the same element."
56+ messageId : 'withVIf'
5057 } )
5158 }
5259 if ( utils . hasDirective ( element , 'else' ) ) {
5360 context . report ( {
5461 node,
55- loc : node . loc ,
56- message :
57- "'v-else-if' and 'v-else' directives can't exist on the same element."
62+ messageId : 'withVElse'
5863 } )
5964 }
6065 if ( node . key . argument ) {
6166 context . report ( {
62- node,
63- loc : node . loc ,
64- message : "'v-else-if' directives require no argument."
67+ node : node . key . argument ,
68+ messageId : 'unexpectedArgument'
6569 } )
6670 }
6771 if ( node . key . modifiers . length > 0 ) {
6872 context . report ( {
6973 node,
70- loc : node . loc ,
71- message : "'v-else-if' directives require no modifier."
74+ loc : {
75+ start : node . key . modifiers [ 0 ] . loc . start ,
76+ end : node . key . modifiers [ node . key . modifiers . length - 1 ] . loc . end
77+ } ,
78+ messageId : 'unexpectedModifier'
7279 } )
7380 }
7481 if ( ! node . value || utils . isEmptyValueDirective ( node , context ) ) {
7582 context . report ( {
7683 node,
77- loc : node . loc ,
78- message : "'v-else-if' directives require that attribute value."
84+ messageId : 'expectedValue'
7985 } )
8086 }
8187 }
0 commit comments