目的:変数NGモデルに影響を与えずに、テキスト入力フィールドのサブストリングをマスク/非表示にする機能角度(V1)ディレクティブはマスクする(表示から、ないモデル)テキスト入力フィールドに任意のランダムなサブ
例:$のscope.input.urlがadmin:[email protected]
が含まれていますしながら、
<input type="text" placeholder="enter URL" ng-model="input.url" mask="dilbert">
ユーザーがadmin:[email protected]
を入力した場合は、表示はこれが可能であるadmin:*******@mylocation.host.com
示して?フォームを表示する際に、ユーザーが入力する必要があるURL内のパスワードを隠す必要がある状況があります。回避策は、表示変数とクローンされた実際の変数を保持することですが、それは実際には洗練された解決策ではありません。
さらに動機はこの要件を設定するURLを要求するモバイルアプリです
(以下WilliamBさんのコメントに対処するために)説明しました。
:そのURL はユーザーが基本認証を使用するようにバックエンドサーバーを構成している場合はここ
(このモバイルアプリのすべてのユーザが独自のサーバーを使用しています)基本的な認証資格情報を含めるには、サンプルのスクリーンショットであること尋ねる
URL欄が表示されたらa)のではなく、編集されている、パスワードは、Th1を維持するために、変数モデル
B)に影響を与えずにマスクされていますURLフィールドが編集中の場合、パスワードは通常のテキスト(フォーカス)として表示されます
c)mask='string'
askは単純化されました。実際には、このユースケースはmask
となりそうですが、入力テキストフィールドに添付されていれば、入力がフォーマットのときにパスワードテキストをマスクしますurl://user:[email protected]/path
これは基本的なマスキングですが、非常に少数の人々がマスクされているものを見るためにDOMを解剖し始めます
ラブリー。私は明日の朝にもっと飛び込みます - 私が見ている問題の1つは、dilbertを*******に変換した後にテキスト入力を編集して(削除tと言ったら)モデル値がすべて恒星の代わりになることです – user1361529
Yupあなたが編集するたびに、 "*"はng-model変数を上書きします。私は避ける必要があります。 – user1361529
あなたが記述している振る舞いが完全にはめ込まれていないと思います。バックスペーシングを開始するか、「*」文字の真ん中に入力すれば、モデルとマスキングはどうなるでしょうか?なぜこれらの文字をマスキングしていますが、 'mask =" dilbert "'を使ってHTMLにテキストを表示していますか?あなたの実際のユースケースを記述している場合は、 'type =" password "を使ってフィールド全体をマスキングするなど、もっと合理的な選択肢があります。 –