#angular
Вопрос:
Я хочу использовать тернарный оператор непосредственно в значении поля ввода
<div>
<div>
<input type="text" [(ngModel)]="make" placeholder="make" />
<input type="text" [(ngModel)]="model" placeholder="model" />
<input type="text" [(ngModel)]="miles" value="using ternary here.." />
</div>
<div *ngFor="let car of cars">
We have a {{ car.make }} {{ car.model }} with a mileage of {{ car.miles }}
</div>
</div>
<button (click)="addCar()">add Car</button>
Как я могу использовать троичный в поле с именем miles?
Комментарии:
1. Не используйте
value
иngModel
.ngModel
это своего рода управляемая угловым альтернативаvalue
. Вы хотите задать начальное значение с помощью тернарного оператора? Тогда, возможно, сделайте это в томcomponent.ts
месте, где вы инициализируетеmiles
.2. Я бы также предположил, что значение вещи и представление вещи должны быть разделены (я предполагаю, что причина, по которой вы хотите использовать троичный, заключается в том, что при некоторых обстоятельствах вы хотите показать другую строку в div). Вместо изменения значения используйте a
pipe
, чтобы использовать значение и перевести его в нужное вам строковое представление. Таким образом, правильное место для тройки — это труба.3. Я понимаю, спасибо вам за совет Clashsoft
4. как я могу использовать это (трубу) ?
5. вместо
{{ car.miles }}
тебя бы написал{{ car.miles | myPipe }}
. Взгляните на документы, если вы хотите пойти этим путем 🙂 angular.io/guide/pipes