onSelectionChange
घटना selected
घटना को प्रतिस्थापित कर दी गई है क्योंकि आइटम को चुना या अचयनित होने पर ईवेंट के बीच अंतर करना अब संभव है।
दो मामलों के बीच अंतर करने के लिए लक्ष्य विधि में $event
पैरामीटर पास करने की आवश्यकता है, अन्यथा एमडी-ऑटोकॉप्लेट विधि को दो बार बुलाएगा (एक बार नए चुने हुए आइटम के साथ और एक बार अचयनित/पिछले मान के साथ) । हालांकि यह अच्छा होगा कि दस्तावेज इस बदलाव के बारे में कुछ और स्पष्ट होंगे।
कैसे प्राप्त करने के लिए नीचे दिए गए
केवल घटना "का चयन करें पर":
खाका
<md-autocomplete #panel="mdAutocomplete" [displayWith]="displayFn">
<md-option (onSelectionChange)="selected($event, country)"
*ngFor="let country of filteredCountries | async" [value]="country">
<div class="selector-elements">
{{ country.name }}
</div>
</md-option>
नियंत्रक
selected(event: MdOptionSelectionChange, country: ICountry) {
if (event.source.selected) {
this.propagateChange(country);
}
}
मैं अपने घटक मैं में MdAutocompleteTrigger है करने में सक्षम हूँ जोड़ें: '@ ViewChild (MdAutocompleteTrigger) ट्रिगर: MdAutocompleteTrigger; ' ' ngAfterContentInit() { सेटटाइमआउट (() => this.trigger.openPanel()); } ' लेकिन मैं optionSelections उपयोग नहीं कर सकते, किसी ने मुझसे एक उदाहरण – Yoamb
दे सकते हैं कर सकते हैं मैं कोशिश इस ' ngAfterContentInit() { setTimeout ((=> Observable.merge (...) this.trigger.optionSelections) । सदस्यता के ((विकल्प) => console.log (विकल्प))); } 'लेकिन काम नहीं कर रहा – Yoamb