Commit 373dfb3cad8fcffcea3c71b6b67f9575f1e1f511
1 parent
8f4e2cf0
removed observer
Showing
2 changed files
with
11 additions
and
19 deletions
Show diff stats
src/components/carousel/carousel-item.vue
... | ... | @@ -23,9 +23,10 @@ |
23 | 23 | } |
24 | 24 | }, |
25 | 25 | compiled () { |
26 | - // this.$parent.slotChange(); | |
27 | - // this.$parent.updateSlides(true, true); | |
28 | - // this.$parent.updatePos(); | |
26 | + this.$parent.slotChange(); | |
27 | + }, | |
28 | + beforeDestroy () { | |
29 | + this.$parent.slotChange(); | |
29 | 30 | } |
30 | 31 | }; |
31 | 32 | </script> | ... | ... |
src/components/carousel/carousel.vue
... | ... | @@ -137,8 +137,13 @@ |
137 | 137 | }, |
138 | 138 | // use when slot changed |
139 | 139 | slotChange () { |
140 | - this.slides = []; | |
141 | - this.slideInstances = []; | |
140 | + this.$nextTick(() => { | |
141 | + this.slides = []; | |
142 | + this.slideInstances = []; | |
143 | + | |
144 | + this.updateSlides(true, true); | |
145 | + this.updatePos(); | |
146 | + }); | |
142 | 147 | }, |
143 | 148 | handleResize () { |
144 | 149 | this.$nextTick(() => { |
... | ... | @@ -167,20 +172,6 @@ |
167 | 172 | }, |
168 | 173 | compiled () { |
169 | 174 | this.updateSlides(true); |
170 | - | |
171 | - // watch slot changed | |
172 | - if (MutationObserver) { | |
173 | - this.observer = new MutationObserver(() => { | |
174 | - this.slotChange(); | |
175 | - this.updateSlides(true, true); | |
176 | - }); | |
177 | - | |
178 | - this.observer.observe(this.$els.slides, { | |
179 | - childList: true, | |
180 | - characterData: true, | |
181 | - subtree: true | |
182 | - }); | |
183 | - } | |
184 | 175 | }, |
185 | 176 | watch: { |
186 | 177 | autoplay () { | ... | ... |