あなたがより効率的にこれを行うことが、しかし、これは問題の解決策を記述するための最も明確な方法であり、それは上の拡大/実装/読みやすいです。私は、あなたが実際にこれを見ることができるように、値を文書に書き出す、下の方にplnkrへのリンクを含んでいます。あなたがあなたのデータにフェッチしているとき
:私はここのコードでのdocument.write出力を削除した
const data = [{
"id": 1,
"value": "0.59"
}, {
"id": 2,
"value": "N"
}, {
"id": 3,
"value": "LOW"
}, {
"id": 4,
"value": "HIGH"
}, {
"id": 5,
"value": "Y"
}]
反復は、オブジェクトを通して配列で、彼らはYまたはNの値であれば、適切なtrue/false値を持つbooleanValueキーを追加し、チェックボックスを使用してその値にバインドします。
あなたのデータを保存しているとき(可視性のために取り外さY/N値、彼らはまだあなたのデータになります)
for (var i=0; i<data.length; i++) {
if (data[i].value == "Y") {
data[i].boolValue = true
} else if (data[i].value == "N") {
data[i].boolValue = false
}
}
:
const submitData = [{
"id": 1,
"value": "0.59"
}, {
"id": 2,
"boolValue": true
}, {
"id": 3,
"value": "LOW"
}, {
"id": 4,
"value": "HIGH"
}, {
"id": 5,
"boolValue": false
}]
反復配列内のオブジェクトを通じて、彼らがしている場合trueまたはfalseの値を入力し、値のキーを適切なY/N値に設定します。
for (var i=0; i<submitData.length; i++) {
if (submitData[i].boolValue == true) {
submitData[i].value = "Y"
} else if (submitData[i].boolValue == false) {
submitData[i].value = "N"
}
}
https://plnkr.co/edit/DrAvyMV5BqADhLdTTn6M?p=preview
あなたはsettorとモデルの変数にあるチェックボックスを結合することができます。変数がtrueに設定されている場合は、別の隠しフォームの入力値を「Y」に更新します。変数がfalseに設定されている場合は、非表示の入力を 'N 'に更新してください。 – BeetleJuice
これは私が最初にやろうとしていることですが、実装すれば効率的ではないと思うと多くのチェックボックスがあります。今私はカスタムコンポーネント/入力を作成したいが、それでもYとNに変更する方法がわからない – ilovejavaAJ
どのようにデータを取得していますか? Observable経由のサービスから?最初にデータを取得して値に直接バインドするときに、.mapを使用してデータのY/N値を真/偽に変換することができます。 –