在Parse
中设置角色层次结构时出现奇怪的错误:
Uncaught ReferenceError: parent is not defined
角色都是在Parse中创建的,我从getRoles
中得到的关系对象看起来很好,但是当调用add
方法时,我得到了这个错误。还有人有类似的经历吗?
function createRolesForOrganization(organization){
var self = Parse.User.current();
var ownerRole = new Parse.Role(organization.id + '_Owner', new Parse.ACL(self)),
adminRole = new Parse.Role(organization.id + '_Admin', new Parse.ACL(self)),
userRole = new Parse.Role(organization.id + '_User', new Parse.ACL(self));
return Parse.Object
.saveAll([
ownerRole,
adminRole,
userRole
])
.then(function(objs){
ownerRole = objs[0];
adminRole = objs[1];
userRole = objs[2];
userRole.getRoles().add(adminRole);
adminRole.getRoles().add(ownerRole);
return Parse.Object.saveAll([
ownerRole,
adminRole,
userRole
]);
});
}
这是Parse JavaScript SDK中的一个bug,报告如下:https://developers.facebook.com/bugs/1677477152487599/
在此期间,一个快速的解决方案是将"parent"替换为"this"。