Skip to content

Commit 3f2bb11

Browse files
author
Wong Ho Chi Mark
committed
missing scope.$apply when using callback
1 parent 28df19f commit 3f2bb11

File tree

1 file changed

+28
-12
lines changed

1 file changed

+28
-12
lines changed

src/slick.js

Lines changed: 28 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ angular
8383
centerPadding: scope.centerPadding || '50px',
8484
cssEase: scope.cssEase || 'ease',
8585
customPaging: attr.customPaging ? function (slick, index) {
86-
return scope.customPaging({ slick: slick, index: index });
86+
return scope.customPaging({slick: slick, index: index});
8787
} : void 0,
8888
dots: attr.dots || scope.dots === 'true',
8989
draggable: scope.draggable !== 'false',
@@ -134,15 +134,15 @@ angular
134134
var slickness = angular.element(element);
135135

136136
if (angular.element(element).hasClass('slick-initialized')) {
137-
if(options.enabled) {
137+
if (options.enabled) {
138138
return slickness.slick('getSlick');
139139
} else {
140140
destroy();
141141
}
142142
} else {
143143
angular.element(element).css('display', 'block');
144144

145-
if(!options.enabled) {
145+
if (!options.enabled) {
146146
return;
147147
}
148148
// Event
@@ -154,7 +154,7 @@ angular
154154
return slick.slideHandler(currentIndex);
155155
}
156156
});
157-
$timeout(function() {
157+
$timeout(function () {
158158
slickness.slick(options);
159159
});
160160
}
@@ -175,46 +175,62 @@ angular
175175
slickness.on('afterChange', function (event, slick, currentSlide, nextSlide) {
176176
currentIndex = currentSlide;
177177
if (typeof options.event.afterChange !== 'undefined') {
178-
options.event.afterChange(event, slick, currentSlide, nextSlide);
178+
scope.$apply(function () {
179+
options.event.afterChange(event, slick, currentSlide, nextSlide);
180+
});
179181
}
180182
});
181183

182184
slickness.on('beforeChange', function (event, slick, currentSlide, nextSlide) {
183185
if (typeof options.event.beforeChange !== 'undefined') {
184-
options.event.beforeChange(event, slick, currentSlide, nextSlide);
186+
scope.$apply(function () {
187+
options.event.beforeChange(event, slick, currentSlide, nextSlide);
188+
});
185189
}
186190
});
187191

188192
slickness.on('reInit', function (event, slick) {
189193
if (typeof options.event.reInit !== 'undefined') {
190-
options.event.reInit(event, slick);
194+
scope.$apply(function () {
195+
options.event.reInit(event, slick);
196+
});
191197
}
192198
});
193199

194200
if (typeof options.event.breakpoint !== 'undefined') {
195201
slickness.on('breakpoint', function (event, slick, breakpoint) {
196-
options.event.breakpoint(event, slick, breakpoint);
202+
scope.$apply(function () {
203+
options.event.breakpoint(event, slick, breakpoint);
204+
});
197205
});
198206
}
199207
if (typeof options.event.destroy !== 'undefined') {
200208
slickness.on('destroy', function (event, slick) {
201-
options.event.destroy(event, slick);
209+
scope.$apply(function () {
210+
options.event.destroy(event, slick);
211+
});
202212
});
203213
}
204214
if (typeof options.event.edge !== 'undefined') {
205215
slickness.on('edge', function (event, slick, direction) {
206-
options.event.edge(event, slick, direction);
216+
scope.$apply(function () {
217+
options.event.edge(event, slick, direction);
218+
});
207219
});
208220
}
209221

210222
if (typeof options.event.setPosition !== 'undefined') {
211223
slickness.on('setPosition', function (event, slick) {
212-
options.event.setPosition(event, slick);
224+
scope.$apply(function () {
225+
options.event.setPosition(event, slick);
226+
});
213227
});
214228
}
215229
if (typeof options.event.swipe !== 'undefined') {
216230
slickness.on('swipe', function (event, slick, direction) {
217-
options.event.swipe(event, slick, direction);
231+
scope.$apply(function () {
232+
options.event.swipe(event, slick, direction);
233+
});
218234
});
219235
}
220236
};

0 commit comments

Comments
 (0)