小编Dan*_*eva的帖子

角度2:使用CanDeactivate,但显示模式而不是窗口。

如何使用引导模式而不是确认来使用CanDeactivate?事实是:如何在执行此过程时返回可观察的结果?

代码如下。CheckoutComponent是相同的组件,我有模态和要防止停用的模态

public modalResponse: Observable<boolean> = new Observable((observer) => { });

public saveChanges() { ///OPEN MODAL AFTER CANDEAC
    this.openSaveChangeModal();
    return this.modalResponse.take(1);
}

canDeactivate(component: CheckoutComponent){
    if(this.nav)
        return true;

    else{
        component.saveChanges(); // Opens modal
    return component.modalResponse.take(1);
    }
}

// Modal save changes
public openSaveChangeModal() {
    jQuery('#deactModal').modal();
}

public acceptNavigate(){
    this.modalResponse = new Observable((observer) => {observer.next(true); });
    jQuery('#deactModal').modal('hide');
}

public cancelNavigate(){
    this.modalResponse = new Observable((observer) => { observer.next(false); });

    jQuery('#deactModal').modal('hide');
}
Run Code Online (Sandbox Code Playgroud)

但是我正在处理

TypeError:无法读取未定义的属性“ saveChanges”

rxjs bootstrap-modal angular

4
推荐指数
1
解决办法
1754
查看次数

标签 统计

angular ×1

bootstrap-modal ×1

rxjs ×1