错误:TypeError:对象没有方法'set'

时间:2014-09-10 21:10:20

标签: javascript ios parse-platform

我正在为我的iOS应用程序使用云代码功能。我用这段代码调用云函数......

var moment = require("moment");

Parse.Cloud.define("registerActivity", function(request, response) {
    var user = request.user;
    user.set("lastActive", new Date());
    user.save().then(function (user) {
        response.success();
    }, function (error) {
        console.log(error);
        response.error(error);
   });
});

从iOS我称之为......

[PFCloud callFunction:@"registerActivity" withParameters:@{}];

为什么我会收到此错误?

Error: TypeError: Object  has no method 'set'

1 个答案:

答案 0 :(得分:1)

您无法通过云函数传递解析对象,并期望它们保持解析对象。更好的解决方案是传递对象id,然后创建指向用户对象的指针,并将该id设置为它。然后更新并保存:

var moment = require("moment");

Parse.Cloud.define("registerActivity", function(request, response) {
    var user = new Parse.User()
    user.id = request.userId;
    user.set("lastActive", new Date());
    user.save().then(function (user) {
        response.success();
    }, function (error) {
        console.log(error);
        response.error(error);
   });
});