Javascript 如何在主干中使用baucisfetch将回调值存储到全局变量?

Javascript 如何在主干中使用baucisfetch将回调值存储到全局变量?,javascript,backbone.js,Javascript,Backbone.js,下面是我计算集合并将其存储在全局变量计数器中的代码。问题是它返回未定义的 _getCount : function(role){ var Users = new collections.Users(); var counter = 0; var self = this; Users.baucis( { conditions: { role : ro

下面是我计算集合并将其存储在全局变量计数器中的代码。问题是它返回未定义的

_getCount : function(role){
            var Users = new collections.Users();
            var counter = 0;
            var self = this;

            Users.baucis(
            {
              conditions: { role : role },
              count: true
            }
          ).then(function (  ) {
                    counter = count;
                    //console.log(counter);
                });
          console.log(counter);
          return counter;

        },

您的
count
行上的变量
counter=count不在任何地方声明

您应该选择以下内容:

 _getCount : function(role){
        var Users = new collections.Users();
        var counter = 0;
        var self = this;

        Users.baucis(
             {
               conditions: { role : role },
               count: true
             }
        ).then(function (  ) {
             counter = Users.length;
             //console.log(counter);
        });
        console.log(counter);
        return counter;

    },

Users.length
在集合上。

使用baucis获取集合并将计数设置为true时。它将通过count变量自动响应集合的长度,这就是我将其分配给计数器的原因。我的问题是如何将其存储在全局变量计数器中,因为一旦我注销它,它将在回调函数之外响应未定义…他们有没有存储它的方法?即使我知道它是异步的。你能尝试将
控制台.log(arguments)
放在回调函数中吗?