本文整理汇总了TypeScript中leancloud-storage.Role类的典型用法代码示例。如果您正苦于以下问题:TypeScript Role类的具体用法?TypeScript Role怎么用?TypeScript Role使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Role类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: done
roleQuery.find<AV.Role[]>().then(roles => {
// 如果角色存在
if (roles.length > 0) {
let administratorRole = roles[0];
roleQuery.equalTo('users', AV.User.current());
roleQuery.find<AV.Object[]>().then(userForRole => {
if (userForRole.length == 0) {//该角色存在,但是当前用户未被赋予该角色
let userRoleRelation = administratorRole.getUsers();
userRoleRelation.add(AV.User.current());//为当前用户赋予该角色
administratorRole.save<AV.Role>().then(result => {
chai.assert.isNotNull(result.id);
done();
}, error => {
if (error) throw 'error on add user';
});
}
}, error => {
if (error) throw 'error on find role';
});
} else {
// 该角色不存在,接下来创建该角色,并未当前用户赋予该角色
let administratorRole = new AV.Role(randomRolename);//新建角色
let userRoleRelation = administratorRole.getUsers();
userRoleRelation.add(AV.User.current());//为当前用户赋予该角色
administratorRole.save<AV.Role>().then(role => {
chai.assert.isNotNull(role.id);
done();
}, error => {
if (error) throw 'error save role and add user';
});
}
}, error => {
开发者ID:leancloud,项目名称:TypeScript-Sample-Code,代码行数:32,代码来源:AVRole#addUser.ts
示例2: it
it('AVRole#save', function (done) {
try {
// 示例代码-Start
// 新建一个角色,并把为当前用户赋予该角色
let roleAcl = new AV.ACL();
roleAcl.setPublicReadAccess(true);
roleAcl.setPublicWriteAccess(false);
// 当前用户是该角色的创建者,因此具备对该角色的写权限
roleAcl.setWriteAccess(AV.User.current(), true);
administratorRole = new AV.Role(randomRolename, roleAcl);//新建角色
administratorRole.save<AV.Role>().then((role) => {
// 创建成功
chai.assert.isNotNull(role.id);
done();
}, error => {
if (error) throw error;
});//保存
// 示例代码-End
}
catch (e) {
chai.assert.isNull(e);
}
});
开发者ID:leancloud,项目名称:TypeScript-Sample-Code,代码行数:25,代码来源:AVRole#save.ts
示例3: done
administratorRole.save<AV.Role>().then(administratorRole => {
moderatorRole = new AV.Role(moderatorName);//新建版主角色
// 将 Administrator 作为 moderatorRole 子角色
moderatorRole.getRoles().add(administratorRole);
moderatorRole.save<AV.Role>().then(role => {
chai.assert.isNotNull(role.id);
done();
}, error => {
if (error) throw 'error on add role.';
});
}, error => {
开发者ID:leancloud,项目名称:TypeScript-Sample-Code,代码行数:11,代码来源:AVRole#addRole.ts
示例4:
return currentUser.signUp().then<AV.Role>(user => {
administratorRole = new AV.Role(randomRolename);
let roleAcl = new AV.ACL();
roleAcl.setPublicReadAccess(true);
roleAcl.setPublicWriteAccess(false);
// 当前用户是该角色的创建者,因此具备对该角色的写权限
roleAcl.setWriteAccess(AV.User.current(), true);
administratorRole.setACL(roleAcl);
return administratorRole;
}, error => {
开发者ID:leancloud,项目名称:TypeScript-Sample-Code,代码行数:11,代码来源:AVRole#addUser.ts
示例5: before
before(function () {
this.timeout(5000);
AV.init({
appId: 'WI5a89CtPIOrWpvIwzNfOg9R-MdYXbMMI',
appKey: 'RUoMOSD8RNlpd0MIIiSDi7BU',
region: 'us'
});
// runs before all tests in this block
let randomRolename = utils.randomString(8);
testRole = new AV.Role(randomRolename);
return testRole.save<AV.Object>().then<string>(testRole => {
roleObjectId = testRole.id;
return roleObjectId;
}, error => {
return null;
});
});
开发者ID:leancloud,项目名称:TypeScript-Sample-Code,代码行数:17,代码来源:AVRole#queryRole.ts
示例6: it
it('AVObject#setACL', function (done) {
try {
// 示例代码-Start
// 新建一个帖子对象
let post = new AV.Object('Post');
post.set("title", "大家好,我是新人");
// 新建一个角色,并把为当前用户赋予该角色
administratorRole = new AV.Role(randomRolename);//新建角色
let relation = administratorRole.getUsers();
administratorRole.getUsers().add(AV.User.current());//为当前用户赋予该角色
administratorRole.save<AV.Role>().then(administratorRole => {//角色保存成功
// 新建一个 ACL 实例
let objectACL = new AV.ACL();
objectACL.setPublicReadAccess(true);
objectACL.setRoleWriteAccess(administratorRole, true);
// 将 ACL 实例赋予 Post 对象
post.setACL(objectACL);
post.save<AV.Object>().then(post => {
chai.assert.isNotNull(post.id);
done();
}, error => {
if (error) throw error;
});
}, error => {
//角色保存失败,处理 error
});
// 示例代码-End
}
catch (e) {
chai.assert.isNull(e);
}
});
开发者ID:leancloud,项目名称:TypeScript-Sample-Code,代码行数:37,代码来源:AVObject#setACL.ts
示例7: it
it('AVRole#addRole', function (done) {
try {
// 示例代码-Start
// 建立版主和论坛管理员之间的从属关系
administratorRole = new AV.Role(administratorName);//新建管理员角色
administratorRole.save<AV.Role>().then(administratorRole => {
moderatorRole = new AV.Role(moderatorName);//新建版主角色
// 将 Administrator 作为 moderatorRole 子角色
moderatorRole.getRoles().add(administratorRole);
moderatorRole.save<AV.Role>().then(role => {
chai.assert.isNotNull(role.id);
done();
}, error => {
if (error) throw 'error on add role.';
});
}, error => {
});
// 示例代码-End
}
catch (e) {
chai.assert.isNull(e);
}
});
开发者ID:leancloud,项目名称:TypeScript-Sample-Code,代码行数:24,代码来源:AVRole#addRole.ts
注:本文中的leancloud-storage.Role类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论