@@ -86,11 +86,12 @@ export default function (Vue) {
86
86
* Trigger an event on self.
87
87
*
88
88
* @param {String } event
89
+ * @return {Boolean } shouldPropagate
89
90
*/
90
91
91
92
Vue . prototype . $emit = function ( event ) {
92
93
var cbs = this . _events [ event ]
93
- this . _shouldPropagate = ! cbs
94
+ var shouldPropagate = ! cbs
94
95
if ( cbs ) {
95
96
cbs = cbs . length > 1
96
97
? toArray ( cbs )
@@ -99,11 +100,11 @@ export default function (Vue) {
99
100
for ( var i = 0 , l = cbs . length ; i < l ; i ++ ) {
100
101
var res = cbs [ i ] . apply ( this , args )
101
102
if ( res === true ) {
102
- this . _shouldPropagate = true
103
+ shouldPropagate = true
103
104
}
104
105
}
105
106
}
106
- return this
107
+ return shouldPropagate
107
108
}
108
109
109
110
/**
@@ -120,8 +121,8 @@ export default function (Vue) {
120
121
var children = this . $children
121
122
for ( var i = 0 , l = children . length ; i < l ; i ++ ) {
122
123
var child = children [ i ]
123
- child . $emit . apply ( child , arguments )
124
- if ( child . _shouldPropagate ) {
124
+ var shouldPropagate = child . $emit . apply ( child , arguments )
125
+ if ( shouldPropagate ) {
125
126
child . $broadcast . apply ( child , arguments )
126
127
}
127
128
}
@@ -139,8 +140,8 @@ export default function (Vue) {
139
140
this . $emit . apply ( this , arguments )
140
141
var parent = this . $parent
141
142
while ( parent ) {
142
- parent . $emit . apply ( parent , arguments )
143
- parent = parent . _shouldPropagate
143
+ var shouldPropagate = parent . $emit . apply ( parent , arguments )
144
+ parent = shouldPropagate
144
145
? parent . $parent
145
146
: null
146
147
}
0 commit comments