2016-02-11 48 views
5

Sto usando un'espressione if/else e una traduzione dei possibili valori all'interno del segnaposto-Tag di un elemento di input HTML. E, ovviamente, non funziona in questo modo, a causa delle virgolette nidificate all'interno del segnaposto-tag:Come si combina un'espressione if/else con la traslazione angolare all'interno di un attributo?

<input type="number" 
     placeholder="{{constraint ? '{{"TERM_A" | translate}}' : '{{"TERM_B" | translate}}'}}" 
     ng-model="" 
     required 
     autocapitalize="none" 
     autocorrect="off" /> 

Come impostare le virgolette doppie/singole conseguenza o c'è ancora una soluzione più elegante?

+12

Non sono sicuro ma potresti provare '{{(constraint?" TERM_A ":" TERM_B ") | tradurre}} – floribon

+0

Sì, ciò funziona: 'placeholder =" {{(vincolo? 'TERM_A': 'TERM_B') | translate}} "', grazie! – Felix

risposta

0

Modo corretto:

<input type="number" 
       placeholder="{{ (constraint ? 'TERM_A' : 'TERM_B') | translate }}" 
       ng-model="" 
       required 
       autocapitalize="none" 
       autocorrect="off" /> 

Un altro campione:

  label="{{ (detailsTriggered ? 'ui.showDetails' : 'ui.hideDetails') | translate}}" 

Attenzione di parentesi graffe, tipi di virgolette e apostrofi "[]".