模块未定义错误

时间:2014-02-14 08:17:45

标签: node.js meteor atmosphere meteorite

我在我的meteor应用程序中使用nodejs并使用mrt add npm添加了包,然后在我packages.json的客户端目录中添加了skimlinksjs及其版本,并将其添加到我的应用程序中

当我尝试在我的应用程序中使用这些服务器端代码时,

var res;
var skim = Meteor.require('skimlinksjs');
var apili = Meteor.require('/config.js');
skim.setup(apili.key);
skim.query({
    searchFor: "title:\"moto g\"",
    fq: "country:US"
  }, function(err,data) {
    res=data.skimlinksProductAPI.numFound;
  }
);
return res;

我的config.js文件就像这样

module.exports = {
    key: "xxxxxxx"
}

当我正在运行此应用程序时,它显示错误,如

module not defined

我的代码出了什么问题,或者是否需要安装其他软件包?

1 个答案:

答案 0 :(得分:0)

我得到了答案

将此功能写入服务器端代码

function returnAllResult()
{
    var skimlinks = Meteor.require('skimlinksjs');
    skimlinks.setup("xxx");
    var skimlinks_query = Async.wrap(skimlinks.query);
    var result = skimlinks_query({
        searchFor: "title:\"moto g\"",
        fq: "country:US",
        rows:5
    });
    return result;
}

了解异步函数watch this

然后在我的服务器端方法中调用此

 apiresult:function()
 {      
    var response = returnAllResult();
    return response.skimlinksProductAPI.products[0].merchant;
 }

现在工作正常。希望这有助于某人