如何在解析服务器云代码中使用模块?

时间:2016-07-06 22:28:50

标签: parse-server

我之前在他们的博客上发布了以下代码,例如this one

    var _ = require("underscore");
Parse.Cloud.beforeSave("Post", function(request, response) {
    var post = request.object;

    var toLowerCase = function(w) { return w.toLowerCase(); };

    var words = post.get("text").split(/b/);
    words = _.map(words, toLowerCase);
    var stopWords = ["the", "in", "and"]
    words = _.filter(words, function(w) { return w.match(/^w+$/) && ! _.contains(stopWords, w); });

    var hashtags = post.get("text").match(/#.+?b/g);
    hashtags = _.map(hashtags, toLowerCase);

    post.set("words", words);
    post.set("hashtags", hashtags);
    response.success();
});

问题是我无法使用npm start启动我的服务器,因为它在var _ = require("underscore");行崩溃了。错误是

  

错误:无法找到模块'下划线'。

我如何在解析服务器的云代码环境中解决这个问题?

1 个答案:

答案 0 :(得分:1)

只需在你的parse-server中找到package.json,然后添加underscore.js作为依赖项,如下所示。

"dependencies": {
    "express": "~4.11.x",
    "kerberos": "~0.0.x",
    "parse-server": "^2.2.15",
    "parse": "~1.8.0",
    "nconf": "0.8.4",
    "underscore": "1.8.3"
  }

然后,如果在本地运行服务器,请使用:

  

npm install

然后

  

npm start

现在云代码运行正常。