SignalR, KO: показать загрузочное сообщение при вызове функции сервера

У меня есть приложение, в котором при нажатии кнопки я вызывал функцию сервера через SignalR. Я изменил состояние после выполнения функции, но как показать сообщение о загрузке между функцией init и выполненной?

self.readyBill = function (data, event) {
    self.hub.server.billReady(self.OrderId).done(function () {
        self.Status("B");
        window.location.href = "BillDetail.aspx?Code=" + self.OrderId;
    }).fail(function (err) {
        self.error(err);
        return false;
    });
}

1 ответ

Решение
self.loading = ko.observable(false);

self.readyBill = function (data, event) {
    self.loading(true);

    self.hub.server.billReady(self.OrderId).done(function () {
        self.Status("B");
        window.location.href = "BillDetail.aspx?Code=" + self.OrderId;
    }).fail(function (err) {
        self.error(err);
        return false;
    }).always(function() {
        self.loading(false);
    });
}

Нет, вы можете связать loading по вашему мнению:

<div data-bind="visible: loading">Loading, please wait</div>
Другие вопросы по тегам