0

我的对象是这样的

  {user:{name:"user1", role:"admin", roleId:1, status:1 },
  users:[{id:1, name:"user1", role:"admin", roleId:1, status:1 }, {id:2, name:"user2",   role:"user", roleId:2, status:2 }]
  roles:[{roleId:1, name="user"},{roleId:2, name="admin"}]
  };

我的模板是这样的。我正在迭代用户

  {{#users}}
 <div id="userRoleInfo">
            <input type="hidden" id="userId" value="{{id}}" />
            <div class="label">
                <label>User permission</label>
            </div>
            {{#checkUser ../user.roleId roleId ../roles}}
                <div >Administrator</div>
            {{else}} 
                <select id="selRoleId" data-custom="true">                                                   
                        <option value="0" >Assign Role</option>

                    //Problem is here. Its not displaying roles
                    {{#each roles}}
                        <option value="{{roleId}}">{{name}}</option>
                    {{/each}}

                </select> 
            {{/checkUser}}

       </div>

{{/users}} 

我的注册助手是这样的

    Handlebars.registerHelper("checkUser", function(loggedInUserRoleId, roleId,roles,  options) {
    if(loggedInUserRoleId == 1 && roleId < 2){
   return options.fn(this);
    }else{
  //return options.inverse(roles);
  return options.inverse(this); // I am not sure what should I do here so that it could display the roles in select tag
         }

    });

所以我不知道如何使用角色对象在选择标签中显示角色。

如果有混淆或您需要更多信息,请告诉我

4

1 回答 1

1

事物在 an 内部的行为与{{else}}它们在任何其他块中的行为相同,因此您只需要../足够的时间来备份到roles居住的地方:

{{#each ../../roles}}
    <option value="{{roleId}}">{{name}}</option>
{{/each}}
于 2013-10-14T16:56:33.223 回答