Skip to content

Instantly share code, notes, and snippets.

@ozexpert
Last active February 21, 2024 11:13
Show Gist options
  • Save ozexpert/d95677e1fe044e6173ef59840c9c484e to your computer and use it in GitHub Desktop.
Save ozexpert/d95677e1fe044e6173ef59840c9c484e to your computer and use it in GitHub Desktop.
AngularJS2 / Ionic2 : ImageCache Directive to use with imgcache.js
import { Directive, ElementRef, Input } from '@angular/core';
declare var ImgCache: any;
@Directive({
selector: '[image-cache]'
})
export class ImageCacheDirective {
constructor (
private el: ElementRef
) {
// init
}
ngOnInit() {
this.el.nativeElement.crossOrigin = "Anonymous"; // CORS enabling
ImgCache.isCached(this.el.nativeElement.src, (path: string, success: any) => {
console.log('path - '+ path);
console.log('success - '+ success);
if (success) {
// already cached
console.log('already cached so using cached');
ImgCache.useCachedFile(this.el.nativeElement);
} else {
// not there, need to cache the image
console.log('not there, need to cache the image - ' + this.el.nativeElement.src);
ImgCache.cacheFile(this.el.nativeElement.src, () => {
console.log('cached file');
// ImgCache.useCachedFile(el.nativeElement);
});
}
});
}
}
@mm580486
Copy link

hi thanks for this code
how to use this code on api call ? not problem ?

@smkamranqadri
Copy link

Cross-origin error :-(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment