Отображение модального диалога при переходе с вкладки в TabStrip

Есть ли способ отобразить модальное диалоговое окно, когда пользователь выбирает вкладку в компоненте TabStrip? В приведенном ниже коде отображается window.confirm, не удается отобразить модальное диалоговое окно.

onTabSelected(e : any){
    if (!window.confirm("Continue with navigation?")) {
        e.prevented = true;
    }  
}

person Anna    schedule 04.04.2017    source источник
comment
в каждой вкладке у вас есть пользовательские компоненты или html?   -  person mast3rd3mon    schedule 06.04.2017


Ответы (2)


Диалог не является прямой заменой window.confirm, поскольку он не может блокировать поток пользовательского интерфейса. Чтобы заменить window.confirm диалоговым окном пользовательского интерфейса Kendo, вы можете запретить выбор всех вкладок и дождаться результата диалога:

onTabSelected(e: any) {
    e.prevented = true;
    this.dialogService.open({
      content: "Continue with navigation?",
      actions: [
        { text: "No" },
        { text: "Yes", primary: true }
      ]
    }).result.subscribe((result) => {
        if (result.primary) {
            // change tab through code
            this.tabStrip.selectTab(e.index);
        }
    });
}

См. эту планку для рабочей демонстрации.

person Alex Gyoshev    schedule 17.04.2017

Закончилось отменой события выбора вкладки, отображением модального диалога и повторной отправкой события на основе ответа пользователя.

person Anna    schedule 04.04.2017