當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript Role.save方法代碼示例

本文整理匯總了TypeScript中leancloud-storage.Role.save方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Role.save方法的具體用法?TypeScript Role.save怎麽用?TypeScript Role.save使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在leancloud-storage.Role的用法示例。


在下文中一共展示了Role.save方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的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: 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

示例5: 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

示例6: 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.save方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。