私はオブジェクトを含む配列を持っています。この配列内のオブジェクトの数をnumber型の入力ボックスから変更したいと思います。だから、入力ボックスの数字が増えるたびに、私は長さを増やし、減らすために同じ長さを増やします。また、デフォルトのオブジェクトをプッシュするか、配列の大きさに応じて最後のオブジェクトをポップすることもできます。ここに私の現在のコードです。タイプ番号の入力ボックスから配列の長さを変更します
// html
<input type="number" class="form-control" min="0" max="12" ng-click ="topEntriesSelectOffense()" ng-value="page.offense.topRow.length">
//my controller
$scope.topEntriesSelectOffense = function() {
// push if number is increased
$scope.page.offense.topRow.push({
"1": {
"firstName": "FirstName",
"lastName": "LastName",
"headshot": "file/path"
},
"2": {
"firstName": "FirstName",
"lastName": "LastName",
"headshot": "file/path"
},
"3": {
"firstName": "FirstName",
"lastName": "LastName",
"headshot": "file/path"
},
"position": "POS"
});
// pop if the number is reduced
$scope.page.offense.topRow.pop();
}
問題は、ユーザーが数を減らし、私は価値の増加または減少を検出する方法が非常に確認していないとき、私は本当に言うカントです。私がpage.offense.topRow.lengthにng-modelを使用すると、長さを増やして配列にギャップを残してオブジェクトをプッシュするので、最後にインデックスにオブジェクトがない配列を取得します。配列は次のようになります。array = [1、3]ありがとう!
私は私が動作するように、時計機能を取得しようとしてきたが、入力ボックスをここで変更されるたびに '$スコープ、私のコードで解雇されていないようです$のウォッチ機能を使用してのアイデアが好きです。$ (; 'topEntriesOffense'、機能(newValueに、OLDVALUE){} 場合(newValueに> OLDVALUE){ topEntriesOffenseAddを()});見て ' – inhaler
私は助けるために、あなたの更新のコードが必要になります。 Soviutが示唆したように、すべての助けを – Sagar
おかげで、私はNG-変更を使用し、それはあなたがモデルの現在の値に応じて提案のように、私はcreatObj()とdestroyObj()に関数を呼び出す変更したとき。スコープ変数に古い値を保存し、this.valueを呼び出して現在の値を関数で取得します。私は時計が正しく動作するようにすることができませんでした。しかし、この方法はかなりうまくいく。すべての助けをありがとう! – inhaler