小编Luc*_*ler的帖子

Material Design Slide Toggle 没有 event.StopPropagation,我应该用什么?

Material Design 中的 Slide Toggle 没有 stopPropagation 事件,因为“MdSlideToggle.prototype._onChangeEvent”已经调用了 stopPropagation。我应该使用什么?

<md-slide-toggle (change)="changeToggle($event, activityType.isActive)" checked="activityType.isActive" value="activityType.activityTypeId" mdTooltip="{{!!activityType.isActive ? 'Active' : 'Inactive'}}" mdTooltipPosition="left"></md-slide-toggle>


public changeToggle(event: MdSlideToggleChange, originalValue){
    if (this.hasChange && event.checked !== originalValue){
        event.stopPropagation();
        //Results in error: [ts] Property 'stopPropagation' does not exist on type 'MdSlideToggleChange'.
    } else {
        this.hasChange = !this.hasChange;
    }
}
Run Code Online (Sandbox Code Playgroud)

我可以使用常规事件,但会出现异常,提示“event.stopPropagation 不是函数”。

目前,我将该行更改为:

event.source.checked = !event.checked;
Run Code Online (Sandbox Code Playgroud)

event.preventDefault 也是如此。我需要要求用户在更改页面上的另一个值之前保存更改,因为“业务需求”。

只是将“检查”的值改回原来的值,正确的做法吗?有一个更好的方法吗?

html javascript jquery material-design angular

5
推荐指数
1
解决办法
598
查看次数

标签 统计

angular ×1

html ×1

javascript ×1

jquery ×1

material-design ×1