2015-07-07 3 views
-1

У меня есть приложение, которое как часть вызова возвращает строку JSON, которая помимо других деталей включает в себя пароль. Теперь, на этом конкретном экране, когда вы находитесь в режиме просмотра, я хотел бы показать пароль в масках (*******) в промежутке, а если вы нажмете на кнопку редактирования, я покажу пароль в поле ввода.Masking Password

Это первый раз, когда я использую AngularJS для этого, и попытался посмотреть, есть ли какой-то фильтр, который может мне помочь в этом, но не зашел слишком далеко. Есть ли какая-то другая услуга, которую я мог бы использовать, чтобы просто скрыть пароль и показать его в промежутке?

+0

Некоторые код плз ... –

ответ

3

Привет вы можете добиться этого, выполнив:

//html 
    <span ng-show="showpassword" type="password">{{password | passwordFilter}}</span> 
    <input ng-hide="showpassword" type="password" ng-model="password"> 
    <input type="checkbox" ng-model="showpassword" ng-checked="false"> 

//js file 
    app.filter('passwordFilter', function() { 
     return function(input) { 
     var split = input.split(''); 
     var result = ""; 
     for(var i = 0 ; i < split.length ; i++){ 
      result += "*"; 
     } 
     return result; 
     }; 
    }); 
0

Вы могли бы написать простой фильтр, чтобы замаскировать строку в некоторые повторенные полукокса:

function passwordMask(aString) { 
    return Array(aString.length + 1).join("*"); 
} 

angular.module("someModule") 
.filter("pwMask",function(){ 
    return passwordMask; 
}); 

Тогда вы могли бы просто использовать {{password | pwMask}} в ваших угловых выражениях.

+0

{{пароль || pwMask}} неверно –

+0

@Arno_Geismar Спасибо, исправлено. Вы также можете редактировать такие вещи самостоятельно, я рад принять такие изменения, как это – LionC

+0

в порядке Я все еще новичок в stackoverflow –