Javascript 如何从云代码模块返回解析承诺?

Javascript 如何从云代码模块返回解析承诺?,javascript,parse-platform,module,cloud,promise,Javascript,Parse Platform,Module,Cloud,Promise,有人知道如何从云代码模块返回承诺的结果吗?我正在使用这些示例,但它一直告诉我选项是未定义的(如果我先检查if(options),则没有定义) 我使用module.function调用函数作为承诺,但仍然没有得到结果 还有想法 编辑:我可以强制它工作,但调用: module.function({},{ success:function(res){ //do something }, error:function(err){ //handle error } }) 但这并不是很好

有人知道如何从云代码模块返回承诺的结果吗?我正在使用这些示例,但它一直告诉我选项是未定义的(如果我先检查if(options),则没有定义)

我使用
module.function
调用函数作为承诺,但仍然没有得到结果

还有想法

编辑:我可以强制它工作,但调用:

module.function({},{
 success:function(res){
  //do something
 }, 
 error:function(err){
  //handle error
 }
})

但这并不是很好,因为1)我必须将空对象粘在那里2)我不能强迫对象像承诺一样工作,因此失去了链接的能力

不确定问题是否与模块或承诺有关。下面的一些代码说明了这两种情况,创建了一个模块,其中包含一个返回承诺的函数,然后从云函数调用该函数

创建如下模块:

// in 'cloud/somemodule.js'

// return a promise to find instances of SomeObject
exports.someFunction = function(someValue) {
    var query = new Parse.Query("SomeObject");
    query.equalTo("someProperty", someValue);
    return query.find();
};
通过要求将模块包括在内:

// in 'cloud/main.js'
var SomeModule = require('cloud/somemodule.js');

Parse.Cloud.define("useTheModule", function(request, response) {
    var value = request.params.value;
    // use the module by mentioning it
    // the promise returned by someFunction can be chained with .then()
    SomeModule.someFunction(value).then(function(result) {
        response.success(result);
    }, function(error) {
        response.error(error);
    });
});

谢谢,问题似乎只是模块中有
then
,而不是
main.js