@@ -7,9 +7,13 @@ expression: invalid.vue
77<!-- should generate diagnostics -->
88
99<template >
10- <!-- Missing value -->
11- <Foo v-bind:foo />
12- <Foo :foo />
10+ <!-- Missing value with no argument -->
11+ <Foo v-bind />
12+ <div v-bind ></div >
13+
14+ <!-- Missing value with a dynamic argument: no static name to derive a binding from -->
15+ <Foo v-bind:[dynamic] />
16+ <Foo :[dynamic] />
1317
1418 <!-- Missing value with modifier -->
1519 <div v-bind.prop></div>
@@ -42,10 +46,10 @@ invalid.vue:5:8 lint/correctness/useVueValidVBind ━━━━━━━━━━
4246 × This v-bind directive is missing a value.
4347
4448 3 │ <template>
45- 4 │ <!-- Missing value -->
46- > 5 │ <Foo v-bind:foo />
47- │ ^^^^^^^^^^
48- 6 │ <Foo :foo / >
49+ 4 │ <!-- Missing value with no argument -->
50+ > 5 │ <Foo v-bind />
51+ │ ^^^^^^
52+ 6 │ <div v-bind ></ div >
4953 7 │
5054
5155 i v-bind directives require a value.
@@ -60,12 +64,12 @@ invalid.vue:6:8 lint/correctness/useVueValidVBind ━━━━━━━━━━
6064
6165 × This v-bind directive is missing a value.
6266
63- 4 │ <!-- Missing value -->
64- 5 │ <Foo v-bind:foo />
65- > 6 │ <Foo :foo / >
66- │ ^^^^
67+ 4 │ <!-- Missing value with no argument -->
68+ 5 │ <Foo v-bind />
69+ > 6 │ <div v-bind ></ div >
70+ │ ^^^^^^
6771 7 │
68- 8 │ <!-- Missing value with modifier -->
72+ 8 │ <!-- Missing value with a dynamic argument: no static name to derive a binding from -->
6973
7074 i v-bind directives require a value.
7175
@@ -79,11 +83,48 @@ invalid.vue:9:8 lint/correctness/useVueValidVBind ━━━━━━━━━━
7983
8084 × This v-bind directive is missing a value.
8185
82- 8 │ <!-- Missing value with modifier -->
83- > 9 │ <div v-bind.prop></div>
86+ 8 │ <!-- Missing value with a dynamic argument: no static name to derive a binding from -->
87+ > 9 │ <Foo v-bind:[dynamic] />
88+ │ ^^^^^^^^^^^^^^^^
89+ 10 │ <Foo :[dynamic] />
90+ 11 │
91+
92+ i v-bind directives require a value.
93+
94+ i Add a value to the directive, e.g. v-bind:foo="bar".
95+
96+
97+ ```
98+
99+ ```
100+ invalid.vue:10:8 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
101+
102+ × This v-bind directive is missing a value.
103+
104+ 8 │ <!-- Missing value with a dynamic argument: no static name to derive a binding from -->
105+ 9 │ <Foo v-bind:[dynamic] />
106+ > 10 │ <Foo :[dynamic] />
107+ │ ^^^^^^^^^^
108+ 11 │
109+ 12 │ <!-- Missing value with modifier -->
110+
111+ i v-bind directives require a value.
112+
113+ i Add a value to the directive, e.g. v-bind:foo="bar".
114+
115+
116+ ```
117+
118+ ```
119+ invalid.vue:13:8 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
120+
121+ × This v-bind directive is missing a value.
122+
123+ 12 │ <!-- Missing value with modifier -->
124+ > 13 │ <div v-bind.prop></div>
84125 │ ^^^^^^^^^^^
85- 10 │
86- 11 │ <!-- Invalid single modifier on long-form -->
126+ 14 │
127+ 15 │ <!-- Invalid single modifier on long-form -->
87128
88129 i v-bind directives require a value.
89130
@@ -93,15 +134,15 @@ invalid.vue:9:8 lint/correctness/useVueValidVBind ━━━━━━━━━━
93134```
94135
95136```
96- invalid.vue:12 :18 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
137+ invalid.vue:16 :18 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
97138
98139 × This v-bind directive has an invalid modifier.
99140
100- 11 │ <!-- Invalid single modifier on long-form -->
101- > 12 │ <div v-bind:foo.invalid="bar"></div>
141+ 15 │ <!-- Invalid single modifier on long-form -->
142+ > 16 │ <div v-bind:foo.invalid="bar"></div>
102143 │ ^^^^^^^^
103- 13 │
104- 14 │ <!-- Invalid modifier on shorthand -->
144+ 17 │
145+ 18 │ <!-- Invalid modifier on shorthand -->
105146
106147 i Only the following modifiers are allowed on v-bind directives: prop, camel, sync, and attr.
107148
@@ -111,15 +152,15 @@ invalid.vue:12:18 lint/correctness/useVueValidVBind ━━━━━━━━━
111152```
112153
113154```
114- invalid.vue:15 :13 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
155+ invalid.vue:19 :13 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
115156
116157 × This v-bind directive has an invalid modifier.
117158
118- 14 │ <!-- Invalid modifier on shorthand -->
119- > 15 │ <span :bar.badModifier="baz"></span>
159+ 18 │ <!-- Invalid modifier on shorthand -->
160+ > 19 │ <span :bar.badModifier="baz"></span>
120161 │ ^^^^^^^^^^^^
121- 16 │
122- 17 │ <!-- Mixed valid and invalid modifiers: ' prop' is valid, ' wrong' is not -->
162+ 20 │
163+ 21 │ <!-- Mixed valid and invalid modifiers: ' prop' is valid, ' wrong' is not -->
123164
124165 i Only the following modifiers are allowed on v-bind directives: prop, camel, sync, and attr.
125166
@@ -129,15 +170,15 @@ invalid.vue:15:13 lint/correctness/useVueValidVBind ━━━━━━━━━
129170```
130171
131172```
132- invalid.vue:18 :15 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
173+ invalid.vue:22 :15 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
133174
134175 × This v-bind directive has an invalid modifier.
135176
136- 17 │ <!-- Mixed valid and invalid modifiers: ' prop' is valid, ' wrong' is not -->
137- > 18 │ <p :baz.prop.wrong="value"></p>
177+ 21 │ <!-- Mixed valid and invalid modifiers: ' prop' is valid, ' wrong' is not -->
178+ > 22 │ <p :baz.prop.wrong="value"></p>
138179 │ ^^^^^^
139- 19 │
140- 20 │ <!-- Dynamic argument is present but modifier is invalid -->
180+ 23 │
181+ 24 │ <!-- Dynamic argument is present but modifier is invalid -->
141182
142183 i Only the following modifiers are allowed on v-bind directives: prop, camel, sync, and attr.
143184
@@ -147,15 +188,15 @@ invalid.vue:18:15 lint/correctness/useVueValidVBind ━━━━━━━━━
147188```
148189
149190```
150- invalid.vue:21 :22 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
191+ invalid.vue:25 :22 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
151192
152193 × This v-bind directive has an invalid modifier.
153194
154- 20 │ <!-- Dynamic argument is present but modifier is invalid -->
155- > 21 │ <p v-bind:[dynamic].notAValidModifier="value"></p>
195+ 24 │ <!-- Dynamic argument is present but modifier is invalid -->
196+ > 25 │ <p v-bind:[dynamic].notAValidModifier="value"></p>
156197 │ ^^^^^^^^^^^^^^^^^^
157- 22 │
158- 23 │ <!-- Multiple invalid modifiers -->
198+ 26 │
199+ 27 │ <!-- Multiple invalid modifiers -->
159200
160201 i Only the following modifiers are allowed on v-bind directives: prop, camel, sync, and attr.
161202
@@ -165,15 +206,15 @@ invalid.vue:21:22 lint/correctness/useVueValidVBind ━━━━━━━━━
165206```
166207
167208```
168- invalid.vue:24 :20 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
209+ invalid.vue:28 :20 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
169210
170211 × This v-bind directive has an invalid modifier.
171212
172- 23 │ <!-- Multiple invalid modifiers -->
173- > 24 │ <button :disabled.once="true"></button>
213+ 27 │ <!-- Multiple invalid modifiers -->
214+ > 28 │ <button :disabled.once="true"></button>
174215 │ ^^^^^
175- 25 │
176- 26 │ <!-- Component binding with unknown modifier -->
216+ 29 │
217+ 30 │ <!-- Component binding with unknown modifier -->
177218
178219 i Only the following modifiers are allowed on v-bind directives: prop, camel, sync, and attr.
179220
@@ -183,15 +224,15 @@ invalid.vue:24:20 lint/correctness/useVueValidVBind ━━━━━━━━━
183224```
184225
185226```
186- invalid.vue:27 :31 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
227+ invalid.vue:31 :31 lint/correctness/useVueValidVBind ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
187228
188229 × This v-bind directive has an invalid modifier.
189230
190- 26 │ <!-- Component binding with unknown modifier -->
191- > 27 │ <MyComponent v-bind:propName.weird="someValue"></MyComponent>
231+ 30 │ <!-- Component binding with unknown modifier -->
232+ > 31 │ <MyComponent v-bind:propName.weird="someValue"></MyComponent>
192233 │ ^^^^^^
193- 28 │ </template>
194- 29 │
234+ 32 │ </template>
235+ 33 │
195236
196237 i Only the following modifiers are allowed on v-bind directives: prop, camel, sync, and attr.
197238
0 commit comments