Условно добавить строку в HTML с угловым выражением

0

У меня есть следующее:

<div>{{animalType}}</div>

который оценивает dog.

Могу ли я условно добавить s если animalType оценивается ничем, кроме собаки?

Что-то вроде этого: что не работает

<div>{{animalType}} {{'s' : !animalType == 'dog'}}</div> 

Так что я буду получать cats

4 ответа

1
Лучший ответ

Используйте ternary оператор в выражении следующим образом:

<div>{{animalType}}{{animalType != 'dog' ? 's' : '' }}</div> 
1

альтернативно

<div>{{animalType}}<span ng-show="animalType!='dog'">s</span></div> 
0

Не проверен, но попробуйте этот простой фрагмент:

<div>{{animalType === "dog" ? animalType : "s"}}</div> 

Кстати, если вы хотите переключиться только между двумя значениями, с моей точки зрения, логически привлекательным было бы что-то вроде этого:

<div>{{isDog ? "dog" : "s"}}</div>

$scope.isDog = true/false
0

Вы также можете использовать ng-if

<div>{{animalType}}<div ng-if="animalType !== 'dog'">s</div></div>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню