backbone.js 我怎样才能让我的javascript等到服务器完成呢?

0vvn1miw  于 2023-01-20  发布在  Java
关注(0)|答案(2)|浏览(217)

在我的网络应用程序中,我有一个页面,用户可以在那里从他们的图书馆复制书籍。
在网站上,当用户点击copy按钮时,应用程序会执行以下Backbone.js代码:

clonebook: function () {
    var self = this;
    this.book.clone().then((r) => {
        self.model.collection.add(r);
    });
},

在我的SQL Server数据库中,book如下所示:
图书ID、书名、作者ID、图书馆ID、行订单号
问题是,如果用户试图通过点击copy按钮来快速克隆多本书,rowOrderNumber可能会出问题。
有没有办法告诉 Backbone.js 克隆方法等到数据库或服务器完成一个克隆过程后再进行下一个克隆过程?
谢谢!

anauzrmj

anauzrmj1#

最常见的UX模式是在进程开始时禁用按钮,在完成时启用。

clonebook: function () {
    var self = this;
    // disable clone button
    this.book.clone().then((r) => {
        self.model.collection.add(r);
        // enable clone button
    });
},
ckocjqey

ckocjqey2#

我没有用骨气,但是

clonebook: function () {
    var self = this;
    self.loading = true
    this.book.clone().then((r) => {
        self.model.collection.add(r).then(() => {
          self.loading = false
        });
    });
},

不是你必须使用这个loading来禁用按钮

相关问题