File tree 4 files changed +16
-3
lines changed
src/compiler/phases/2-analyze
tests/validator/samples/binding-select-multiple-dynamic
4 files changed +16
-3
lines changed Original file line number Diff line number Diff line change
1
+ ---
2
+ " svelte " : patch
3
+ ---
4
+
5
+ fix: allow ` bind:this ` on ` <select> ` with dynamic ` multiple ` attribute
Original file line number Diff line number Diff line change @@ -413,7 +413,7 @@ const validation = {
413
413
}
414
414
}
415
415
416
- if ( parent . name === 'select' ) {
416
+ if ( parent . name === 'select' && node . name !== 'this' ) {
417
417
const multiple = parent . attributes . find (
418
418
( a ) =>
419
419
a . type === 'Attribute' &&
Original file line number Diff line number Diff line change 3
3
"code" : " attribute_invalid_multiple" ,
4
4
"message" : " 'multiple' attribute must be static if select uses two-way binding" ,
5
5
"start" : {
6
- "line" : 6 ,
6
+ "line" : 14 ,
7
7
"column" : 19
8
8
},
9
9
"end" : {
10
- "line" : 6 ,
10
+ "line" : 14 ,
11
11
"column" : 29
12
12
}
13
13
}
Original file line number Diff line number Diff line change 3
3
let multiple;
4
4
</script >
5
5
6
+ <!-- ok -->
7
+ <select bind:this ={value } {multiple }>
8
+ <option >1</option >
9
+ <option >2</option >
10
+ <option >3</option >
11
+ </select >
12
+
13
+ <!-- error -->
6
14
<select bind:value {multiple }>
7
15
<option >1</option >
8
16
<option >2</option >
You can’t perform that action at this time.
0 commit comments