[SOLVED] Inline template error caused by object unsubscribed (updated)


#1

I’m having a major issue with my app that after several days I’m still unable to solve and, unfortunately, fear I might not be able to describe it particularly well either.

I have an app with a slider interface. When I push a new page onto the view stack and that page has input fields sometimes an error will occur that, effectively, causes future navigation within the app to be inoperable. In other words - none of the other pages in my slide will work and buttons that used to push new views onto the stack stop working.

It’s not 100% consistent. I thought it was caused by calling this.navCtrl.pop() on some of these pages. It wasn’t. If I made the page with the input fields scroll a bit (I suspect forcing the objects to get marked dirty or something) and then just used the back button the same thing could happen.

Here’s the stack from Safari with the device connected to my desktop for debugging. I have really tried to figure this out myself but the stack points to code outside my control and I’m not even sure what’s happening. Seems to be in Platform.prototype.transitionEnd.

I’d be grateful for any suggestions.

UPDATE
Here’s a video of what’s happening: view here.

UPDATE 2
Just discovered that I can make this happen in Chrome both on the desktop and iPhone. It wasn’t happening on the desktop before because the content always fit on the screen and never had to scroll to be seen. I made the window smaller and the error produced itself.

You’ll see that the error occurs on the profile editing page after simply scrolling the view. So, all database things have been eliminated. Without scrolling navigation seems undisturbed. Once I scroll (or change the form through updated entires on the fields) navigation is messed up and I can no longer go to any other page.

[    Error] Error: Error in ./EditProfilePage class EditProfilePage - inline template:54:12 caused by: object unsubscribed
    	destroy (main.js:142290)
    	detachAndDestroy (main.js:142045)
    	destroy (main.js:57675:87)
    	_destroy (main.js:11774)
    	_destroyView (main.js:49111)
    	_cleanup (main.js:49131)
    	_trnsFinish (main.js:49055)
    	(anonymous function)
    	onInvoke (main.js:58316)
    	run (polyfills.js:3:6488)
    	(anonymous function) (main.js:48999)
    	_didFinish (main.js:20188)
    	_didFinishAll (main.js:20175)
    	onTransitionEnd (main.js:19622)
    	onTransitionEnd (main.js:8725)

My stuff:

Cordova CLI: 6.4.0
Ionic CLI Version: 2.1.17-201612220455
Ionic App Lib Version: 2.1.9
ios-deploy version: 1.9.0
ios-sim version: 5.0.11
OS: macOS Sierra
Node Version: v6.9.3
Xcode version: Xcode 8.2.1 Build version 8C1002


#2

Appears to be this issue that has been solved: