SignalR,KO:服务器函数调用时显示加载消息

时间:2013-12-10 06:42:17

标签: knockout.js signalr

我有一个应用程序,在按钮点击时我通过SignalR调用了服务器功能。 我在功能完成后改变了状态,但是如何在函数init和done之间显示加载消息?

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 个答案:

答案 0 :(得分:2)

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>