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


TypeScript Role.getUsers方法代碼示例

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


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

        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);

            administratorRole.getUsers().add(AV.User.current());
            return administratorRole;
        }, error => {
開發者ID:leancloud,項目名稱:TypeScript-Sample-Code,代碼行數:13,代碼來源:AVRole#removeUser.ts

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


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