इस बिल्ली की त्वचा के हजारों तरीके। मुझे लगता है कि आप {{}} के बीच के बारे में पूछ रहे हैं, लेकिन दूसरों के लिए जो यहाँ आते हैं, मुझे लगता है कि यह कुछ अन्य विकल्पों को दिखाने के लायक है।
आपके $ स्कोप पर कार्य करना (IMO, यह अधिकांश स्थितियों में आपकी सर्वश्रेष्ठ शर्त है):
app.controller('MyCtrl', function($scope) {
$scope.foo = 1;
$scope.showSomething = function(input) {
return input == 1 ? 'Foo' : 'Bar';
};
});
<span>{{showSomething(foo)}}</span>
एनजी-शो और एनजी-छिपाने का कोर्स:
<span ng-show="foo == 1">Foo</span><span ng-hide="foo == 1">Bar</span>
ngSwitch
<div ng-switch on="foo">
<span ng-switch-when="1">Foo</span>
<span ng-switch-when="2">Bar</span>
<span ng-switch-default>What?</span>
</div>
बर्ट्रेंड के रूप में एक कस्टम फ़िल्टर का सुझाव दिया। (यह आपकी सबसे अच्छी पसंद है अगर आपको एक ही काम बार-बार करना है)
app.filter('myFilter', function() {
return function(input) {
return input == 1 ? 'Foo' : 'Bar';
}
}
{{foo | myFilter}}
या एक कस्टम निर्देश:
app.directive('myDirective', function() {
return {
restrict: 'E',
replace: true,
link: function(scope, elem, attrs) {
scope.$watch(attrs.value, function(v) {
elem.text(v == 1 ? 'Foo': 'Bar');
});
}
};
});
<my-directive value="foo"></my-directive>
व्यक्तिगत रूप से, ज्यादातर मामलों में मैं अपने दायरे में एक फ़ंक्शन के साथ जाता हूं, यह मार्कअप को बहुत साफ रखता है, और यह त्वरित और लागू करना आसान है। जब तक, यानी आप बार-बार एक ही सटीक काम कर रहे हों, तो मैं बर्ट्रेंड के सुझाव के साथ जाऊंगा और परिस्थितियों के आधार पर एक फिल्टर या संभवतः एक निर्देश बना सकता हूं।
हमेशा की तरह, सबसे महत्वपूर्ण बात यह है कि आपके समाधान को बनाए रखना आसान है , और उम्मीद है कि परीक्षण योग्य है। और यह पूरी तरह से आपकी विशिष्ट स्थिति पर निर्भर करता है।