Я попытался это:как передать переменную в тернарное состояние в angularjs?
{{experience.current_work?"Present":{{experience.date_end | date:'MMM yyyy'}}}}
Но это неверно в тройном condition.How мне решить эту проблему?
Я попытался это:как передать переменную в тернарное состояние в angularjs?
{{experience.current_work?"Present":{{experience.date_end | date:'MMM yyyy'}}}}
Но это неверно в тройном condition.How мне решить эту проблему?
Вы уже в выражении (т.е. {{...}}
), так что вам не нужно, чтобы начать новый один
{{experience.current_work ? "Present" : experience.date_end | date:'MMM yyyy'}}
или, может быть, если вы беспокоитесь о порядке оценки
{{experience.current_work ? "Present" : (experience.date_end | date:'MMM yyyy')}}
вы можете сделать это несколькими способами:
Вызвать функцию ниже, когда вам необходимо проверить состояние:
$scope.CheckCurrentWork = function() {
if ($scope.experience.current_work) {
//Do as you want "Present"
} else {
//Do as you want
experience.date_end | date: 'MMM yyyy'
}
}
ИЛИ
{{experience.current_work ? "Present" : experience.date_end | date:'MMM yyyy'}}
ИЛИ
Если вы хотите, чтобы применить условие в любой директиве
<div ng-click="experience.current_work ?'Present' : experience.date_end | date:'MMM yyyy'">
не будет это пытаться фильтровать весь вместо 'date_end' только как для 'present' также, если это текущая работа? –
@AnikIslamAbhi нет, по крайней мере, не в быстром тесте, которое я только что сделал. Я полагаю, вы можете обернуть ветку * false * в круглых скобках, чтобы быть уверенным, что – Phil
yah it it working – user3391137