DevCloudFE / ng-devui

Angular UI Component Library based on DevUI Design
https://devui.design
MIT License
1.75k stars 210 forks source link

🐛 [Bug]: toggle #348

Closed ztworkgithub closed 5 months ago

ztworkgithub commented 7 months ago

Version

16.1.0

Angular Version

16.2.12

Link to minimal reproduction

html:

<d-toggle name="test" [size]="'sm'"
                          [color]="color.button_color"
                          [(ngModel)]="formData['test']"
                          (change)="toggleChange($event)"></d-toggle>

ts:

formData = {
  test: false,
};

toggleChange($event: boolean) {
    console.log('$event: ', $event);
    console.log('test: ', this.formData['test']);
}

Step to reproduce

使用双向绑定后, 用 change 事件绑定 toggleChange 方法, 点击按钮, 查看绑定值是否改变, 发现在 change 事件中双向绑定的值没有改变. 结果: $event: true test: false

What is expected

$event: true test: true

What is actually happening

No response

Any additional comments (optional)

No response

foolmadao commented 5 months ago

change事件触发在ngModel变化触发之前,这两个不要混用,你想用本地双绑值用ngModelChanges