-
Notifications
You must be signed in to change notification settings - Fork 410
Mobile Safari - patchTimer breaks for Angular 1 ngAnimate #626
Description
I have an Angular 2 app that bootstraps an Angular 1 app using the upgrade-downgrade system. The Angular 1 app uses ngAnimate which seems to be breaking zone.js in mobile safari.
angular.js:13920Error: undefined is not an object (evaluating 'handle.ref')
I'm not very familiar with zone.js, but as best as I can tell, mobile safari's requestAnimation is sending zone a task with no handleId (It breaks here: https://github.com/angular/zone.js/blob/master/dist/zone.js#L1402 and upon inspection, task.data.handleId is undefined).
Is there a polyfill or helper library that I'm missing? I'm currently using the core-js shims.
Thanks!
Dustin
Here's the full stacktrace in case its helpful:
angular.js:13920Error: undefined is not an object (evaluating 'handle.ref') http://localhost:8889/main.bundle.js:64904:27 requestAnimationFrame http://localhost:8889/bower_components/angular/angular.js:16702:41 waitForTick@http://localhost:8889/bower_components/angular/angular.js:5669:12 http://localhost:8889/bower_components/angular/angular.js:5679:18 AnimateRunner@http://localhost:8889/bower_components/angular/angular.js:5736:38 queueAnimation@http://localhost:8889/bower_components/angular-animate/angular-animate.js:2447:39 push@http://localhost:8889/bower_components/angular-animate/angular-animate.js:2391:30 enter@http://localhost:8889/bower_components/angular/angular.js:5457:35 http://localhost:8889/bower_components/angular-route/angular-route.js:1013:29 publicLinkFn@http://localhost:8889/bower_components/angular/angular.js:8499:43 lazyCompilation@http://localhost:8889/bower_components/angular/angular.js:8844:30 boundTranscludeFn@http://localhost:8889/bower_components/angular/angular.js:8637:28 controllersBoundTransclude@http://localhost:8889/bower_components/angular/angular.js:9385:37 update@http://localhost:8889/bower_components/angular-route/angular-route.js:1012:36 $broadcast@http://localhost:8889/bower_components/angular/angular.js:18005:33 http://localhost:8889/bower_components/angular-route/angular-route.js:652:36 processQueue@http://localhost:8889/bower_components/angular/angular.js:16383:30 http://localhost:8889/bower_components/angular/angular.js:16399:39 $eval@http://localhost:8889/bower_components/angular/angular.js:17682:28 $digest@http://localhost:8889/bower_components/angular/angular.js:17495:36 $apply@http://localhost:8889/bower_components/angular/angular.js:17790:31 bootstrapApply@http://localhost:8889/bower_components/angular/angular.js:1761:21 invoke@http://localhost:8889/bower_components/angular/angular.js:4718:24 doBootstrap@http://localhost:8889/bower_components/angular/angular.js:1759:20 bootstrap@http://localhost:8889/bower_components/angular/angular.js:1779:23 http://localhost:8889/main.bundle.js:56398:101 invoke@http://localhost:8889/main.bundle.js:63743:31 onInvoke@http://localhost:8889/main.bundle.js:24799:43 invoke@http://localhost:8889/main.bundle.js:63742:40 run@http://localhost:8889/main.bundle.js:63614:49 run@http://localhost:8889/main.bundle.js:24689:65 bootstrap@http://localhost:8889/main.bundle.js:56398:24 http://localhost:8889/main.bundle.js:44409:22 invoke@http://localhost:8889/main.bundle.js:63743:31 run@http://localhost:8889/main.bundle.js:63614:49 http://localhost:8889/main.bundle.js:64036:60 invokeTask@http://localhost:8889/main.bundle.js:63776:40 runTask@http://localhost:8889/main.bundle.js:63652:57 drainMicroTaskQueue@http://localhost:8889/main.bundle.js:63934:42 PromiseResolutionHandlerFunction@[native code] (anonymous function) — angular.js:13920 (anonymous function) — angular.js:10467 $broadcast — angular.js:18007 (anonymous function) — angular-route.js:652 processQueue — angular.js:16383 (anonymous function) — angular.js:16399 $eval — angular.js:17682 $digest — angular.js:17495 $apply — angular.js:17790 bootstrapApply — angular.js:1761 invoke — angular.js:4718 doBootstrap — angular.js:1759 bootstrap — angular.js:1779 (anonymous function) — main.bundle.js:72866 invoke — main.bundle.js:82058 onInvoke — main.bundle.js:32061 invoke — main.bundle.js:82057 run — main.bundle.js:81919 run — main.bundle.js:31928 bootstrap — main.bundle.js:72864 (anonymous function) — main.bundle.js:57221 invoke — main.bundle.js:82058 run — main.bundle.js:81919 (anonymous function) — main.bundle.js:82352 invokeTask — main.bundle.js:82091 runTask — main.bundle.js:81963 drainMicroTaskQueue — main.bundle.js:82249 PromiseResolutionHandlerFunction