@@ -3,7 +3,7 @@ import deindent from '../utils/deindent.js';
3
3
export default {
4
4
enter ( generator , node ) {
5
5
const name = generator . getUniqueName ( `eachBlock` ) ;
6
- const renderer = generator . getUniqueName ( `renderEachBlock ` ) ;
6
+ const renderer = generator . getUniqueName ( `EachBlock ` ) ;
7
7
const elseName = `${ name } _else` ;
8
8
const iterations = `${ name } _iterations` ;
9
9
const renderElse = `${ renderer } _else` ;
@@ -22,33 +22,33 @@ export default {
22
22
23
23
generator . current . initStatements . push ( deindent `
24
24
var ${ name } _value = ${ snippet } ;
25
- var ${ iterations } = [];
26
- ${ node . else ? `var ${ elseName } = null;` : '' }
25
+ this. ${ iterations } = [];
26
+ ${ node . else ? `this. ${ elseName } = null;` : '' }
27
27
28
28
for ( var ${ i } = 0; ${ i } < ${ name } _value.length; ${ i } += 1 ) {
29
- ${ iterations } [${ i } ] = ${ renderer } ( ${ params } , ${ listName } , ${ listName } [${ i } ], ${ i } , component );
30
- ${ ! isToplevel ? `${ iterations } [${ i } ].mount( ${ anchor } .parentNode, ${ anchor } );` : '' }
29
+ this. ${ iterations } [${ i } ] = new ${ renderer } ( ${ params } , ${ listName } , ${ listName } [${ i } ], ${ i } , component );
30
+ ${ ! isToplevel ? `this. ${ iterations } [${ i } ].mount( this. ${ anchor } .parentNode, this. ${ anchor } );` : '' }
31
31
}
32
32
` ) ;
33
33
if ( node . else ) {
34
34
generator . current . initStatements . push ( deindent `
35
35
if ( !${ name } _value.length ) {
36
- ${ elseName } = ${ renderElse } ( ${ params } , component );
37
- ${ ! isToplevel ? `${ elseName } .mount( ${ anchor } .parentNode, ${ anchor } );` : '' }
36
+ this. ${ elseName } = new ${ renderElse } ( ${ params } , component );
37
+ ${ ! isToplevel ? `${ elseName } .mount( this. ${ anchor } .parentNode, this. ${ anchor } );` : '' }
38
38
}
39
39
` ) ;
40
40
}
41
41
42
42
if ( isToplevel ) {
43
43
generator . current . mountStatements . push ( deindent `
44
- for ( var ${ i } = 0; ${ i } < ${ iterations } .length; ${ i } += 1 ) {
45
- ${ iterations } [${ i } ].mount( ${ anchor } .parentNode, ${ anchor } );
44
+ for ( var ${ i } = 0; ${ i } < this. ${ iterations } .length; ${ i } += 1 ) {
45
+ this. ${ iterations } [${ i } ].mount( this. ${ anchor } .parentNode, this. ${ anchor } );
46
46
}
47
47
` ) ;
48
48
if ( node . else ) {
49
49
generator . current . mountStatements . push ( deindent `
50
- if ( ${ elseName } ) {
51
- ${ elseName } .mount( ${ anchor } .parentNode, ${ anchor } );
50
+ if ( this. ${ elseName } ) {
51
+ this. ${ elseName } .mount( this. ${ anchor } .parentNode, this. ${ anchor } );
52
52
}
53
53
` ) ;
54
54
}
@@ -58,44 +58,44 @@ export default {
58
58
var ${ name } _value = ${ snippet } ;
59
59
60
60
for ( var ${ i } = 0; ${ i } < ${ name } _value.length; ${ i } += 1 ) {
61
- if ( !${ iterations } [${ i } ] ) {
62
- ${ iterations } [${ i } ] = ${ renderer } ( ${ params } , ${ listName } , ${ listName } [${ i } ], ${ i } , component );
63
- ${ iterations } [${ i } ].mount( ${ anchor } .parentNode, ${ anchor } );
61
+ if ( !this. ${ iterations } [${ i } ] ) {
62
+ this. ${ iterations } [${ i } ] = new ${ renderer } ( ${ params } , ${ listName } , ${ listName } [${ i } ], ${ i } , this. component );
63
+ this. ${ iterations } [${ i } ].mount( this. ${ anchor } .parentNode, this. ${ anchor } );
64
64
} else {
65
- ${ iterations } [${ i } ].update( changed, ${ params } , ${ listName } , ${ listName } [${ i } ], ${ i } );
65
+ this. ${ iterations } [${ i } ].update( changed, ${ params } , ${ listName } , ${ listName } [${ i } ], ${ i } );
66
66
}
67
67
}
68
68
69
- for ( var ${ i } = ${ name } _value.length; ${ i } < ${ iterations } .length; ${ i } += 1 ) {
70
- ${ iterations } [${ i } ].teardown( true );
69
+ for ( var ${ i } = ${ name } _value.length; ${ i } < this. ${ iterations } .length; ${ i } += 1 ) {
70
+ this. ${ iterations } [${ i } ].teardown( true );
71
71
}
72
72
73
- ${ iterations } .length = ${ listName } .length;
73
+ this. ${ iterations } .length = ${ listName } .length;
74
74
` ) ;
75
75
76
76
if ( node . else ) {
77
77
generator . current . updateStatements . push ( deindent `
78
- if ( !${ name } _value.length && ${ elseName } ) {
79
- ${ elseName } .update( changed, ${ params } );
78
+ if ( !${ name } _value.length && this. ${ elseName } ) {
79
+ this. ${ elseName } .update( changed, ${ params } );
80
80
} else if ( !${ name } _value.length ) {
81
- ${ elseName } = ${ renderElse } ( ${ params } , component );
82
- ${ elseName } .mount( ${ anchor } .parentNode, ${ anchor } );
83
- } else if ( ${ elseName } ) {
84
- ${ elseName } .teardown( true );
81
+ this. ${ elseName } = new ${ renderElse } ( ${ params } , this. component );
82
+ this. ${ elseName } .mount( this. ${ anchor } .parentNode, this. ${ anchor } );
83
+ } else if ( this. ${ elseName } ) {
84
+ this. ${ elseName } .teardown( true );
85
85
}
86
86
` ) ;
87
87
}
88
88
89
89
generator . current . teardownStatements . push ( deindent `
90
- for ( var ${ i } = 0; ${ i } < ${ iterations } .length; ${ i } += 1 ) {
91
- ${ iterations } [${ i } ].teardown( ${ isToplevel ? 'detach' : 'false' } );
90
+ for ( var ${ i } = 0; ${ i } < this. ${ iterations } .length; ${ i } += 1 ) {
91
+ this. ${ iterations } [${ i } ].teardown( ${ isToplevel ? 'detach' : 'false' } );
92
92
}
93
93
` ) ;
94
94
95
95
if ( node . else ) {
96
96
generator . current . teardownStatements . push ( deindent `
97
- if ( ${ elseName } ) {
98
- ${ elseName } .teardown( ${ isToplevel ? 'detach' : 'false' } );
97
+ if ( this. ${ elseName } ) {
98
+ this. ${ elseName } .teardown( ${ isToplevel ? 'detach' : 'false' } );
99
99
}
100
100
` ) ;
101
101
}
0 commit comments