(change)
শাস্ত্রীয় ইনপুট পরিবর্তন ইভেন্টে আবদ্ধ ইভেন্ট।
https://developer.mozilla.org/en-US/docs/Web/Events/change
আপনার ইনপুটটিতে কোনও মডেল না থাকলেও আপনি (পরিবর্তন) ইভেন্টটি ব্যবহার করতে পারেন
<input (change)="somethingChanged()">
(ngModelChange)
হয় @Output
এনজিএমডেল নির্দেশিকা c মডেল পরিবর্তন হলে আগুন লাগে। আপনি এনজিএমডেল নির্দেশ ছাড়াই এই ইভেন্টটি ব্যবহার করতে পারবেন না।
https://github.com/angular/angular/blob/master/packages/forms/src/directives/ng_model.ts#L124
আপনি উত্স কোডে আরও আবিষ্কার হিসাবে, (ngModelChange)
করার সাথে সাথে নতুন মানটি নির্গত হয়।
https://github.com/angular/angular/blob/master/packages/forms/src/directives/ng_model.ts#L169
সুতরাং এর অর্থ আপনার কাছে এরকম ব্যবহারের দক্ষতা রয়েছে:
<input (ngModelChange)="modelChanged($event)">
modelChanged(newObj) {
// do something with new value
}
মূলত, দেখে মনে হয় দুটিয়ের মধ্যে কোনও বড় পার্থক্য নেই, তবে ngModel
ইভেন্টগুলি ব্যবহার করার সময় শক্তি অর্জন করে [ngValue]
।
<select [(ngModel)]="data" (ngModelChange)="dataChanged($event)" name="data">
<option *ngFor="let currentData of allData" [ngValue]="currentData">
{{data.name}}
</option>
</select>
dataChanged(newObj) {
// here comes the object as parameter
}
ধরে নিন আপনি " ngModel
জিনিস" ছাড়াই একই জিনিস চেষ্টা করে দেখুন
<select (change)="changed($event)">
<option *ngFor="let currentData of allData" [value]="currentData.id">
{{data.name}}
</option>
</select>
changed(e){
// event comes as parameter, you'll have to find selectedData manually
// by using e.target.data
}