私は解決できないようなデータバンディングを伴うこの問題を抱えています。ユニークなデータバインド
私は角度領域で私の知識の欠如かもしれないと思っています。
解決策がわかっている場合は、小さな説明も含めることができます。
私の問題:私はデータの私のオブジェクト内のすべてのユーザーを書くこと* ngForと一緒に使用するテーブルを持っている
。
私はこれらのそれぞれを崩壊させて、ユーザーがこれらのそれぞれを編集できるようにします。これらの折りたたみのそれぞれには、独自の「パスワード」と「パスワードの繰り返し」フィールドがあります。
「パスワード」フィールドに付けられています。「スランプ」と呼ばれるボタンがあります。このボタンの機能は、文字列型の変数を、使用する可能性のあるランダムな文字列に変更する関数を呼び出します。パスワード。
私の問題は、私がこの関数を呼び出すと、テーブルのすべての行でデータバインディングとして使用する変数を変更したことです。私は、生成されたパスワードを、それが接続されている入力フィールドに固有のものにします。
写真:
--------------------------------- ------------------------------------------ separate
コード:
hantera-anvandare.ts:
export class HanteraAnvandareCmp {
private updateUserPwd: string;
private users: Object[] = [
{ userID: '1', firstName: 'Name0', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname', teamID: 1 },
{ userID: '2', firstName: 'Name2', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname2', teamID: 2 },
{ userID: '3', firstName: 'Name3', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname3', teamID: 3 },
{ userID: '4', firstName: 'Name4', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname4', teamID: 4 },
{ userID: '5', firstName: 'Name5', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname4', teamID: 4 },
{ userID: '6', firstName: 'Name6', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname4', teamID: 4 },
{ userID: '7', firstName: 'Name7', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname4', teamID: 4 },
{ userID: '8', firstName: 'Name8', lastName: 'lastname', username: '[email protected]', teamName: 'randomteamname4', teamID: 4 }
];
private teams: Object[] = [
{ teamName: 'randomteamname', teamID: 1 },
{ teamName: 'randomteamname2', teamID: 2 },
{ teamName: 'randomteamname3', teamID: 3 }
];
private generatePassword():string {
var length = 8,
charset = "ABCDEFGHJKLMNPRSTUVWXYZabcdefghijkmnopqrstuvwxyz23456789",
retVal = "";
for (var i = 0, n = charset.length; i < length; ++i) {
retVal += charset.charAt(Math.floor(Math.random() * n));
}
this.updateUserPwd = retVal;
}
hantera-anvandare.html:あなたはを通して繰り返すことを個々の参照/行ごとに異なるngModel
を作成する必要が
<div class="form-group col-lg-6 col-md-6 col-sm-6">
<div class="form-group">
<label>Nytt lösenord</label>
<div class="input-group">
<input type="text" class="form-control" ngControl="edit_password" [(ngModel)]="updateUserPwd" placeholder="Nytt lösenord">
<span class="input-group-btn">
<a (click)="generatePassword()" class="btn btn-primary">Slumpa</a>
</span>
</div>
</div>
まず、$(event.target)、特に '$'(jQuery)を削除することをお勧めします。 jQueryはテンプレート内で '[(ngModel)]'を見つけることはありません。これはAngularで処理され、DOMに到達することはありません。 –
ソリューションを提供するためには、より多くのコードを提供する必要があると思います。 idが 'password_slump 'の要素はどこにありますか? –
それで問題は何ですか?現在の行動は何ですか?ユニークなパスワードを生成しませんか?またはユニークなパスワードを生成しますが、そのパスワードはどこでも変更されますか? – micronyks