@vitonimal wrote:
Hello! I am migrating to Ionic 4 and the code I am translating is using a class that extends the Ion class, previously in ‘ionic-angular’.
However, I do not see the Ion base class in the @ionic/angular package. Which class should I extend in order to create a customized ion component?
Here is the ionic 3 class:
@Component({ selector: "fa-icon", template: "" }) export class FaIconComponent extends Ion implements OnChanges { @Input() name: string; @Input() size: string; @Input("fixed-width") set fixedWidth(fixedWidth: string) { this.setElementClass("fa-fw", this.isTrueProperty(fixedWidth)); } constructor(config: Config, elementRef: ElementRef, renderer: Renderer) { super(config, elementRef, renderer, "fa"); } ngOnChanges(changes: SimpleChanges): void { if (changes.name) { this.unsetPrevAndSetCurrentClass(changes.name); } if (changes.size) { this.unsetPrevAndSetCurrentClass(changes.size); } } isTrueProperty(val: any): boolean { if (typeof val === "string") { val = val.toLowerCase().trim(); return (val === "true" || val === "on" || val === ""); } return !!val; }; unsetPrevAndSetCurrentClass(change: SimpleChange) { this.setElementClass("fa-" + change.previousValue, false); this.setElementClass("fa-" + change.currentValue, true); } }
Posts: 1
Participants: 1