मैं एक चयनित तत्व को वस्तुओं की सूची में बाँधना चाहता हूँ - जो कि काफी आसान है:
@Component({
selector: 'myApp',
template: `<h1>My Application</h1>
<select [(ngModel)]="selectedValue">
<option *ngFor="#c of countries" value="c.id">{{c.name}}</option>
</select>`
})
export class AppComponent{
countries = [
{id: 1, name: "United States"},
{id: 2, name: "Australia"}
{id: 3, name: "Canada"},
{id: 4, name: "Brazil"},
{id: 5, name: "England"}
];
selectedValue = null;
}
इस मामले में, ऐसा प्रतीत होता है कि selectedValue
एक संख्या होगी - चयनित आइटम की आईडी।
हालाँकि, मैं वास्तव में देश के ऑब्जेक्ट के लिए बाध्य करना चाहूंगा ताकि selectedValue
केवल आईडी के बजाय ऑब्जेक्ट हो। मैंने विकल्प के मूल्य को बदलने की कोशिश की जैसे:
<option *ngFor="#c of countries" value="c">{{c.name}}</option>
लेकिन यह काम नहीं करता है। यह मेरे लिए एक वस्तु रखने के लिए लगता है selectedValue
- लेकिन उस वस्तु को नहीं जो मैं उम्मीद कर रहा हूं। आप इसे मेरे प्लंकर उदाहरण में देख सकते हैं ।
मैंने भी परिवर्तन की घटना के लिए बाध्य करने की कोशिश की ताकि मैं चयनित आईडी के आधार पर वस्तु को स्वयं निर्धारित कर सकूं; हालाँकि, ऐसा प्रतीत होता है कि बाउंड एनकोडेल के अपडेट होने से पहले परिवर्तन की घटना समाप्त हो जाती है - मतलब उस बिंदु पर मेरे पास नए चयनित मूल्य तक पहुंच नहीं है।
क्या एंगुलर 2 के साथ किसी चयनित तत्व को बांधने का एक साफ तरीका है?