Skip to content

Commit

Permalink
fix(): add URL resolver (#61)
Browse files Browse the repository at this point in the history
  • Loading branch information
leoiii12 authored and ihadeed committed Jun 7, 2017
1 parent 4dfc95f commit da78d60
Showing 1 changed file with 15 additions and 10 deletions.
25 changes: 15 additions & 10 deletions src/components/img-loader.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { Component, Input, Output, ElementRef, Renderer, OnInit, EventEmitter } from '@angular/core';
import { ImageLoader } from '../providers/image-loader';
import { ImageLoaderConfig } from '../providers/image-loader-config';
import { File } from '@ionic-native/file';

@Component({
selector: 'img-loader',
Expand Down Expand Up @@ -113,15 +114,15 @@ export class ImgLoader implements OnInit {

element: HTMLElement;

constructor(
private _element: ElementRef
, private _renderer: Renderer
, private _imageLoader: ImageLoader
, private _config: ImageLoaderConfig
) { }
constructor(private _element: ElementRef,
private _renderer: Renderer,
private _imageLoader: ImageLoader,
private _config: ImageLoaderConfig,
private _file: File) {
}

ngOnInit(): void {
if(this.fallbackAsPlaceholder && this.fallbackUrl) {
if (this.fallbackAsPlaceholder && this.fallbackUrl) {
this.setImage(this.fallbackUrl, false);
}

Expand Down Expand Up @@ -186,7 +187,10 @@ export class ImgLoader implements OnInit {
}

// set it's src
this._renderer.setElementAttribute(this.element, 'src', imageUrl);
this._file.resolveLocalFilesystemUrl(imageUrl).then((entry) => {
this._renderer.setElementAttribute(this.element, 'src', entry.toInternalURL());
});


if (this.fallbackUrl && !this._imageLoader.nativeAvailable) {
this._renderer.setElementAttribute(this.element, 'onerror', `this.src="${ this.fallbackUrl }"`);
Expand Down Expand Up @@ -218,8 +222,9 @@ export class ImgLoader implements OnInit {
this._renderer.setElementStyle(this.element, 'background-repeat', this.backgroundRepeat);
}

this._renderer.setElementStyle(this.element, 'background-image', 'url(\'' + ( imageUrl || this.fallbackUrl ) + '\')');

this._file.resolveLocalFilesystemUrl(imageUrl).then((entry) => {
this._renderer.setElementStyle(this.element, 'background-image', 'url(\'' + ( entry.toInternalURL() || this.fallbackUrl ) + '\')');
});
}

this.load.emit(this);
Expand Down

0 comments on commit da78d60

Please sign in to comment.