我正在尝试扩展Parse.User对象,并且在调用基础对象方法时遇到问题,即登录。
所以我有以下代码:
main.models.User = Parse.User.extend({
className : 'User',
defaults : {
objectId : false,
username : 'anonymous',
emailVerified : false,
createdAt : new Date(),
updatedAt : new Date(),
firstName : 'Anonymous',
lastName : 'User'
},
name : function() {
return this.firstName + ' ' + this.lastName;
}
});
在我的代码的某些方面,我做了:
main.user = new main.models.User();
然后在我的代码中我会尝试这样做:
var $form = $(form);
main.user.logIn($form.find('#txtUserEmail').val(), $form.find('#pwdPassword').val(), {
success : function() {
// Hide the modal window
main.modal.empty();
},
error : function(user, error) {
// Show Error
that.ui.errorMsg.toggleClass('hidden').find('span').html('Error: ' + error.code + ' ' + error.message);
}
});
tl; dr - 问题
登录请求发生但是格式不正确,因为在我的网络选项卡中我看到了XHR,但请求有效负载是整个骨干对象,而不仅仅是我传入登录方法的用户名或密码。我得到了400个不好的请求。
响应是:
code: 201
error: "missing user password"
真实问题
我是否可以扩展Parse.User对象并且能够像使用主Parse对象一样调用基础对象方法?
谢谢!
答案 0 :(得分:1)
Parse.User
的类名是"_User"
,而不是"User"
,以避免与名为"User"
的常规类发生冲突。您的扩展程序正在覆盖类名称 - 这可能会也可能不会导致此问题。