2017-09-13 1 views
1

Ich habe eine Komponente, in der ich in ngStyle durch eine Funktion, Es funktioniert alle Stile außer Überlauf-y, ich weiß nicht, ob es sich wirklich gut setzt Irgendwelche Ideen?set ngStyle mit Angular2

onChangeFilterClientes(obj:any):any[]{   
    return this.clientes.filter(c => c.Nombre.toString().toLowerCase().indexOf(obj.query)>-1);   

    } 

Die Funktionen auf meine Komponente:

interface IOpcionesListaAutocomplete { 
    width: number; 
    height: number; 
    isOverflowY: boolean; 
} 

export class OpcionesListaAutocomplete implements IOpcionesListaAutocomplete { 
    width: number; 
    height: number; 
    isOverflowY: boolean; 
    constructor() { } 
} 

@Input() 
opcionesLista: IOpcionesListaAutocomplete = { 
    width: 550, 
    height: 150, 
    isOverflowY: true 
}; 


addStylesLista(){ 
    let styles= { 
     'heigth.px':this.opcionesLista.height, 
     'width.px':this.opcionesLista.width, 
     'overflow-y': this.opcionesLista.isOverflowY? 'auto': 'hidden' 
    }; 
    return styles; 
} 

Alle Stile funktioniert ok, außer Überlauf.

Antwort

0

Versuchen Sie, ein Leerzeichen zwischen das Fragezeichen und die Variable zu setzen.

'overflow-y': this.opcionesLista.isOverflowY ? 'auto': 'hidden' 
0

Neben @ Legman Antwort, bemerkte eine andere Tippfehler in der addStylesLista() Methode für 'height.px' (in der Frage ist es 'heigth.px').

0

Wird es wahrscheinlich aufgrund einer Style-Spezifikation woanders überschrieben? Versuchen Sie, !important hinzuzufügen:

'overflow-y': (this.opcionesLista.isOverflowY? 'auto': 'hidden') + ' !important'