साथ मैं के साथ एक घटक है:, ngFor अंदर ngModel में एक गतिशील प्रॉपर्टी सेट कोणीय 2
- "selectedData": किसी भी
- "फील्ड": क्षेत्रों की एक सरणी। एक फ़ील्ड इन गुणों के साथ एक वस्तु है: लेबल और प्रकार। ये फील्ड वस्तु "selectedData"
उदाहरण वर्णन:
selectedData = { Label:"test", IsUsed:false}
fields = [{name:'label', type:'string'},{name:'IsUsed, type:'boolean'}
मैं 'selectedData'
यहाँ अंदर डेटा संपादित करने के लिए एक फ़ॉर्म जनरेट करें कोशिश कर रहा हूँ है का हिस्सा मेरी देखें:
<div class="ui-grid-row" *ngFor="let myField of fields" >
<div class="ui-grid-col-4"><label for="{{myField.name}}">{{myField.name}}</label></div>
<div class="ui-grid-col-8"><input pInputText id="{{myField.name}}" [(ngModel)]="this['selectedData.' + myField.name]" /></div>
</div>
समस्या इस पंक्ति के साथ है
[(ngModel)]="this['selectedData.' + myField.name]"
यह वांछित काम नहीं करता है जैसा मैं चाहता था।
आप देख सकते हैं, Angular2 नाम "selectedData.Label" के साथ एक वस्तु बनाता है के बजाय selectedData मौजूदा ऑब्जेक्ट का उपयोग कर: यहाँ जब मैं संपादित मेरी घटक के गूगल क्रोम घड़ी है।
क्या कोई समाधान है? या मुझे इसे अलग करना चाहिए?
Thx
क्यों एक डाउनवोट? –
मुझे यह समझने में वास्तव में कठिन समय है। तो आप मौजूदा चयनित डेटा के लेबल को संपादित करने के लिए अपने उदाहरण में कोशिश कर रहे हैं। फिर यह होना चाहिए '[(ngModel)] = "चयनित डेटा। लेबल" अन्यथा यह लेबल को अपडेट नहीं करेगा। – Alex
आपको किस उद्देश्य के लिए फ़ील्ड सरणी की आवश्यकता है? – Alex