I have a requirement for complete offline transparency within my angular application. In summary, it's a beefed up PowerPoint viewer so there are a lot of images that need to be viewable offline. I've tried two approaches:
Approach 1:
Storing the image locations in local storage and reading from the that when the http request fails (the user is offline).
This works great however it's not supported by IE, which is a problem in my organization for some users.
Approach 2:
Encoding the images in base64 and returning that to the angular app from the server.
This seems to be locking the main ui thread for rendering of the images, which is surprisingly long for the number of images that i have to reference.
NOTE: approach 1 does not lock the main thread; it's very smooth (damn you IE)
Also the base 64 strings are so large that i can only store a few in localstorage within the 5 MB limit so i'll need to use some browser database that doesn't have a limit.
I feel like there must be a better way, any ideas?