Can';在函数js中插入t mongoDB

Can';在函数js中插入t mongoDB,mongodb,meteor,Mongodb,Meteor,我实际上在meteor中构建了一个简单的应用程序,它从我的蒸汽库存中提取武器的皮肤,解析武器的市场哈希名称,最后根据蒸汽市场返回皮肤的中间价格。我的问题是关于存储皮肤的价格,我使用Meteor中包含的npm包(我采用异步方式),我可以很容易地获得皮肤的价格。我将此代码放入服务器端的Meteor方法中,如下所示: Meteor.methods({ getPrice:function(weapon,skin,state,loteryRef) { var csgomark

我实际上在meteor中构建了一个简单的应用程序,它从我的蒸汽库存中提取武器的皮肤,解析武器的市场哈希名称,最后根据蒸汽市场返回皮肤的中间价格。我的问题是关于存储皮肤的价格,我使用Meteor中包含的npm包(我采用异步方式),我可以很容易地获得皮肤的价格。我将此代码放入服务器端的Meteor方法中,如下所示:

Meteor.methods({

getPrice:function(weapon,skin,state,loteryRef)
{
      
  
    var csgomarket = Meteor.npmRequire('csgo-market');

    var Q = Meteor.npmRequire('q');
  
    var wears = [state];

    var data = {
      prices : [{
        weapon : weapon,
        cached : false,
        skins : [skin],
        skinData : {},
        price : '',
      }]
    }
  
    var getPrice = function(theData) {
      var promises = [];
      theData.skins.forEach(function(skin) {
        theData.skinData[skin] = {};
        wears.forEach(function(wear) {
          promises.push(csgomarket.getSinglePriceAsync(theData.weapon, skin, wear, false).then(function(data) {
          
            theData.price = data.median_price;
             
          }));
        });
      });
      return Q.allSettled(promises).then(function() {
        return theData;
      });
    }

    getPrice(data.prices[0]).then(function(results) {
       
            console.log(results.price);
            
    });
    
            
}
});
promise函数的结果
getPrice(data.prices[0]),然后(函数(results){})只能是console.logged,我无法将结果保存在此函数之外。当我尝试在此函数中执行插入以保存此值时,它也不起作用。我做错了什么


请原谅我的英语很好

当然,mongoDB目前包含在meteor平台包的默认集合中,因此我可以向您提供的关于mongo的唯一信息是版本(2.6.7)。关于getPrice()方法内部的插入,我只执行了一个简单的插入,如:Lotery.insert({start:new Date().getTime(),reference:loteryRef,type:1,end:false,max:10,item_price:results.price,});当然,mongoDB目前包含在meteor平台包的默认集合中,因此我可以向您提供的关于mongo的唯一信息是版本(2.6.7)。关于getPrice()方法内部的插入,我只执行了一个简单的插入,如:Lotery.insert({start:new Date().getTime(),reference:loteryRef,type:1,end:false,max:10,item_price:results.price,});