AngularJS için ilk özel filtresini yazmaya çalışıyorum. Bir şeyin bir dize veya sayı olup olmadığını belirleme yeteneğini istiyorum. Bir sayıysa, bunu, yerleşik filtre | number
ile biçimlendirir.Metin/sayı için AngularJS özel filtresi
Şu anda have a workaround using ng-if
:
HTML
<table>
<tr ng-repeat="(key, val) in data">
<td>{{key}}</td>
<td ng-if="isNumber(val)">{{val | number}}</td>
<td ng-if="!isNumber(val)">{{val}}</td>
</tr>
</table>
Denetleyici: Ben kendi filtre olsa var gibi atamak için daha iyi bir çözüm olacağını düşündüm
$scope.data = {
One:55689,
two:"consider all the options",
three:800243,
four:"all over",
five:"or just beginning"
};
$scope.isNumber = function (value) {
return angular.isNumber(value);
};
. Şimdiye kadar sahip olduğum şey (evet, çıplak kemikler olduğunu biliyorum ... bu benim ilkim).
.filter('textOrNumber',function(){
return function (input) {
if(typeof input === 'number'){
console.log("I'm a number");
//return as formatted number
} else {
console.log("Not a number");
//do nothing, just return
};
return input;
};
})
bir numara olmaya doğrulandığında, ben sadece Eğik | number
filtre uygulamak olabilir? Veya filtreyi elle javascript ile yapmam gerekiyor mu?
$filter
hizmet enjekte ve sonra böyle programlama sayı filtresi çağırır
Bu kesinlikle doğrudur. Bunun kadar basit olabileceğini biliyordum. Ben '$ filter' bakmadım. Ne yapabileceğini daha iyi anlamak için bunu yapmak zorundayım. – EnigmaRM