当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript leancloud-storage.Role类代码示例

本文整理汇总了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;未经允许,请勿转载。