使用解析服务器无法获得“下划线”

时间:2016-02-13 16:40:45

标签: javascript node.js heroku parse-platform cloud-code

我刚迁移了一个Parse Server,一切正常,但云代码除外。我已经明白这是因为在我的main.js中我需要库“Underscore”。

这是我的云代码功能:

    Parse.Cloud.define("ReadyUp", function(request, response) {
var _ = require('underscore');
    var fbid = request.user.get("fbid");
    var query = new Parse.Query("Spel");
    query.equalTo("lobby", fbid);
    query.find().then(function(results) {
        _.each(results, function(spel) {
            spel.addUnique("ready", fbid);
        });
        return Parse.Object.saveAll(results);
    }).then(function(result) {
        response.success(result);
    }, function(error) {
        response.error(error);
    });
});

在迁移之前,代码没有错误。我猜测要求找不到合适的文件夹。为了给你文件夹结构,它看起来像这样:

Cloudcode位置: mainfolder->云> main.js

下划线库: mainfolder-> node_modules->下划线(文件夹)

代码是否有问题或文件夹结构是否有问题?

提前致谢!

/马丁

2 个答案:

答案 0 :(得分:4)

您必须指向正确的下划线文件。我做了以下事情:

var _ = require('../node_modules/underscore/underscore.js')

答案 1 :(得分:1)

package.json中为您的依赖项添加下划线,手动或运行npm install underscore --save

这将产生如下这样的一行:

"underscore": "^1.8.3"

从那时起,你可以实际做到这一点

var _ = require('underscore');