解析云函数定义

时间:2014-09-02 22:19:56

标签: javascript parse-platform

我的问题是关于解析云函数的第一行。 例如,此函数是来自解析文档的副本:

Parse.Cloud.beforeSave(Parse.User, function(request, response) { 
   if (!request.object.get("email")) {
   response.error("email is required for signup");
   } else {
   response.success();
  }
});

Parse.User是一个解析预定义类。这是否意味着在此类中保存对象时会自动执行此云功能?

另一个问题也与课程有关。这里有两个解析云函数的例子来自解析示例应用程序Anypic和Parse docs:

 Parse.Cloud.beforeSave('Activity', function(request, response) {
   var currentUser = request.user;
   var objectUser = request.object.get('fromUser');
   if(!currentUser || !objectUser) {
   response.error('An Activity should have a valid fromUser.');
  } else if (currentUser.id === objectUser.id) {
   response.success();
  } else {
   response.error('Cannot set fromUser on Activity to a user other than the current user.');
  }
});


  Parse.Cloud.beforeSave("Review", function(request, response) {
    if (request.object.get("stars") < 1) {
    response.error("you cannot give less than one star");
    } else if (request.object.get("stars") > 5) {
     response.error("you cannot give more than five stars");
    } else {
    response.success();
  }
});

第一行中这两个云函数之间的区别是:Activity用单引号引用,但Review用双引号引用。它们都代表一些解析子类或其他东西吗?

1 个答案:

答案 0 :(得分:0)

回答您的原始问题:是的,带签名的功能:

Parse.Cloud.beforeSave(Parse.User, function(request, response)
在保存每个Parse.User类对象之前执行

要回答您的下一个问题,这两个例子是等效的。

http://stackoverflow.com/questions/242813/when-to-use-double-or-single-quotes-in-javascript

他们分别为Activity和Review类预先保存了东西。