File tree 7 files changed +63
-1
lines changed
7 files changed +63
-1
lines changed Original file line number Diff line number Diff line change @@ -1164,9 +1164,11 @@ export default class Component {
1164
1164
const variable = this . var_lookup . get ( name ) ;
1165
1165
1166
1166
if ( ! variable ) return name ;
1167
- if ( variable && variable . hoistable ) return name ;
1168
1167
1169
1168
this . add_reference ( name ) ; // TODO we can probably remove most other occurrences of this
1169
+
1170
+ if ( variable . hoistable ) return name ;
1171
+
1170
1172
return `ctx.${ name } ` ;
1171
1173
}
1172
1174
Original file line number Diff line number Diff line change 1
1
export default {
2
2
test ( assert , vars ) {
3
3
assert . deepEqual ( vars , [
4
+ {
5
+ export_name : null ,
6
+ injected : false ,
7
+ module : false ,
8
+ mutated : false ,
9
+ name : 'hoistable_foo' ,
10
+ reassigned : false ,
11
+ referenced : true ,
12
+ writable : false
13
+ } ,
4
14
{
5
15
export_name : null ,
6
16
injected : false ,
Original file line number Diff line number Diff line change 1
1
<script >
2
+ import hoistable_foo from ' ' ;
2
3
let foo;
3
4
</script >
4
5
6
+ <div use:hoistable _foo/>
5
7
<div use:foo />
Original file line number Diff line number Diff line change 1
1
export default {
2
2
test ( assert , vars ) {
3
3
assert . deepEqual ( vars , [
4
+ {
5
+ export_name : null ,
6
+ injected : false ,
7
+ module : false ,
8
+ mutated : false ,
9
+ name : 'hoistable_foo' ,
10
+ reassigned : false ,
11
+ referenced : true ,
12
+ writable : false
13
+ } ,
4
14
{
5
15
export_name : null ,
6
16
injected : false ,
Original file line number Diff line number Diff line change 1
1
<script >
2
+ import hoistable_foo from ' ' ;
2
3
let foo;
3
4
</script >
4
5
6
+ {#each [] as x (x )}
7
+ <div animate:hoistable _foo/>
8
+ {/each }
5
9
{#each [] as x (x )}
6
10
<div animate:foo />
7
11
{/each }
Original file line number Diff line number Diff line change 1
1
export default {
2
2
test ( assert , vars ) {
3
3
assert . deepEqual ( vars , [
4
+ {
5
+ export_name : null ,
6
+ injected : false ,
7
+ module : false ,
8
+ mutated : false ,
9
+ name : 'hoistable_foo' ,
10
+ reassigned : false ,
11
+ referenced : true ,
12
+ writable : false
13
+ } ,
14
+ {
15
+ export_name : null ,
16
+ injected : false ,
17
+ module : false ,
18
+ mutated : false ,
19
+ name : 'hoistable_bar' ,
20
+ reassigned : false ,
21
+ referenced : true ,
22
+ writable : false
23
+ } ,
24
+ {
25
+ export_name : null ,
26
+ injected : false ,
27
+ module : false ,
28
+ mutated : false ,
29
+ name : 'hoistable_baz' ,
30
+ reassigned : false ,
31
+ referenced : true ,
32
+ writable : false
33
+ } ,
4
34
{
5
35
export_name : null ,
6
36
injected : false ,
Original file line number Diff line number Diff line change 1
1
<script >
2
+ import { hoistable_foo , hoistable_bar , hoistable_baz } from ' ' ;
2
3
let foo;
3
4
let bar;
4
5
let baz;
5
6
</script >
6
7
8
+ <div in:hoistable _foo/>
9
+ <div out:hoistable _bar/>
10
+ <div transition:hoistable _baz/>
7
11
<div in:foo />
8
12
<div out:bar />
9
13
<div transition:baz />
You can’t perform that action at this time.
0 commit comments