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>