Hi,
I implemented SqlStorage in Ionic2 and everything is fine except for Firefox (both using > ionic serve and > ionic build browser) where I have a blank page with multiple error messages like the one reported in the bottom. I read Firefox doesn’t support SQL Storage, is that the reason? If so why do you suggest to use SqlStorage instead of LocalStorage?
EXCEPTION: Error in :0:0
EXCEPTION: Error in :0:0
[275]</BrowserDomAdapter</BrowserDomAdapter.prototype.logError(error="EXCEPTION: Error in :0:0")app.bundle.js (riga 38647)
[275]</BrowserDomAdapter</BrowserDomAdapter.prototype.logGroup(error="EXCEPTION: Error in :0:0")app.bundle.js (riga 38657)
[20]</ExceptionHandler</ExceptionHandler.prototype.call(exception=Object { type="object"}, stackTrace="", reason=null)app.bundle.js (riga 1945)
[165]</ApplicationRef_</ApplicationRef_.prototype.run/<()app.bundle.js (riga 24481)
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke(targetZone=Object { type="object"}, callback=Object { type="object"}, applyThis=null, applyArgs=null, source=null)zone.js (riga 323)
NgZoneImpl/this.inner<.onInvoke(delegate=Object { type="object"}, current=Object { type="object"}, target=Object { type="object"}, callback=Object { type="object"}, applyThis=null, applyArgs=null, source=null)app.bundle.js (riga 35501)
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke(targetZone=Object { type="object"}, callback=Object { type="object"}, applyThis=null, applyArgs=null, source=null)zone.js (riga 322)
Zone</Zone</Zone.prototype.run(callback=Object { type="object"}, applyThis=null, applyArgs=null, source=null)zone.js (riga 216)
[238]</NgZoneImpl</NgZoneImpl.prototype.runInner(fn=Object { type="object"})app.bundle.js (riga 35532)
[237]</NgZone</NgZone.prototype.run(fn=Object { type="object"})app.bundle.js (riga 35432)
[165]</ApplicationRef_</ApplicationRef_.prototype.run(callback=Object { type="object"})app.bundle.js (riga 24470)
[165]</ApplicationRef_</ApplicationRef_.prototype.bootstrap(componentFactory=Object { type="object"})app.bundle.js (riga 24492)
coreLoadAndBootstrap/</<(arr=Object { type="object"})app.bundle.js (riga 24276)
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke(targetZone=Object { type="object"}, callback=Object { type="object"}, applyThis=null, applyArgs=Object { type="object"}, source=null)zone.js (riga 323)
NgZoneImpl/this.inner<.onInvoke(delegate=Object { type="object"}, current=Object { type="object"}, target=Object { type="object"}, callback=Object { type="object"}, applyThis=null, applyArgs=Object { type="object"}, source=null)app.bundle.js (riga 35501)
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke(targetZone=Object { type="object"}, callback=Object { type="object"}, applyThis=null, applyArgs=Object { type="object"}, source=null)zone.js (riga 322)
Zone</Zone</Zone.prototype.run(callback=Object { type="object"}, applyThis=null, applyArgs=Object { type="object"}, source=null)zone.js (riga 216)
scheduleResolveOrReject/<()zone.js (riga 571)
Zone</ZoneDelegate</ZoneDelegate.prototype.invokeTask(targetZone=Object { type="object"}, task=Object { type="object"}, applyThis=null, applyArgs=null)zone.js (riga 356)
NgZoneImpl/this.inner<.onInvokeTask(delegate=Object { type="object"}, current=Object { type="object"}, target=Object { type="object"}, task=Object { type="object"}, applyThis=null, applyArgs=null)app.bundle.js (riga 35492)
Zone</ZoneDelegate</ZoneDelegate.prototype.invokeTask(targetZone=Object { type="object"}, task=Object { type="object"}, applyThis=null, applyArgs=null)zone.js (riga 355)
Zone</Zone</Zone.prototype.runTask(task=Object { type="object"}, applyThis=null, applyArgs=null)zone.js (riga 256)
drainMicroTaskQueue()zone.js (riga 474)
ZoneTask/this.invoke()zone.js (riga 426)
window.console.error(error);
EXCEPTION: Error: Uncaught (in promise): EXCEPTION: Error in :0:0
ORIGINAL EXCEPTION: TypeError: win.openDatabase is not a function
ORIGINAL STACKTRACE:
SqlStorage@http://localhost/timeshift/build/js/app.bundle.js:80289:24
Storage@http://localhost/timeshift/build/js/app.bundle.js:80393:26
BackendService@http://localhost/timeshift/build/js/app.bundle.js:302:24
anonymous/_View_MyApp_Host0.prototype.createInternal@MyApp_Host.template.js:21:30
[213]</AppView</AppView.prototype.create@http://localhost/timeshift/build/js/app.bundle.js:30165:16
[213]</DebugAppView</DebugAppView.prototype.create@http://localhost/timeshift/build/js/app.bundle.js:30377:20
[202]</ComponentFactory</ComponentFactory.prototype.create@http://localhost/timeshift/build/js/app.bundle.js:29394:27
[167]</ApplicationRef_</ApplicationRef_.prototype.bootstrap/<@http://localhost/timeshift/build/js/app.bundle.js:24612:27
[167]</ApplicationRef_</ApplicationRef_.prototype.run/<@http://localhost/timeshift/build/js/app.bundle.js:24590:26
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke@http://localhost/timeshift/build/js/zone.js:323:20
NgZoneImpl/this.inner<.onInvoke@http://localhost/timeshift/build/js/app.bundle.js:35619:32
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke@http://localhost/timeshift/build/js/zone.js:322:20
Zone</Zone</Zone.prototype.run@http://localhost/timeshift/build/js/zone.js:216:25
[240]</NgZoneImpl</NgZoneImpl.prototype.runInner@http://localhost/timeshift/build/js/app.bundle.js:35650:60
[239]</NgZone</NgZone.prototype.run@http://localhost/timeshift/build/js/app.bundle.js:35550:51
[167]</ApplicationRef_</ApplicationRef_.prototype.run@http://localhost/timeshift/build/js/app.bundle.js:24588:9
[167]</ApplicationRef_</ApplicationRef_.prototype.bootstrap@http://localhost/timeshift/build/js/app.bundle.js:24610:16
coreLoadAndBootstrap/</<@http://localhost/timeshift/build/js/app.bundle.js:24394:43
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke@http://localhost/timeshift/build/js/zone.js:323:20
NgZoneImpl/this.inner<.onInvoke@http://localhost/timeshift/build/js/app.bundle.js:35619:32
Zone</ZoneDelegate</ZoneDelegate.prototype.invoke@http://localhost/timeshift/build/js/zone.js:322:20
Zone</Zone</Zone.prototype.run@http://localhost/timeshift/build/js/zone.js:216:25
scheduleResolveOrReject/<@http://localhost/timeshift/build/js/zone.js:571:53
Zone</ZoneDelegate</ZoneDelegate.prototype.invokeTask@http://localhost/timeshift/build/js/zone.js:356:24
NgZoneImpl/this.inner<.onInvokeTask@http://localhost/timeshift/build/js/app.bundle.js:35610:32
Zone</ZoneDelegate</ZoneDelegate.prototype.invokeTask@http://localhost/timeshift/build/js/zone.js:355:24
Zone</Zone</Zone.prototype.runTask@http://localhost/timeshift/build/js/zone.js:256:29
drainMicroTaskQueue@http://localhost/timeshift/build/js/zone.js:474:26
ZoneTask/this.invoke@http://localhost/timeshift/build/js/zone.js:426:22