0
Я пытаюсь замаскировать все символы, кроме последних четырех, используя фильтр в angularjs. Я получаю следующее сообщение об ошибке.Угловой типError: text.replace не является функцией. ng-repeat
HTML:
<table>
...
<tr ng-repeat="emp in FiltredCorpEmployees | orderBy:propertyName:reverse" ng-model="emp.evaluationStatusId">
<td class="col-md-2 text-center">{{emp.hashSSN | MaskText}}</td>
</tr>
..
</table>
JS:
DashBoardModule.filter('MaskText', function() {
//debugger;
return function (text) {
if (!text) {
return text;
}
return text.replace(/.(?=.{4})/g, 'X');
};
})
'.replace' доступна только для строки, что, если вы 'консоль .log (typeof text) '? – jessh
@jessh thank u. выяснил, в чем проблема. console.log (typeof text)? возвращает число. –
попробуйте посмотреть, что получится: 'text.toString(). Replace (/. (? =. {4})/g, 'X')' – akazemis