AngularJs генерируют категории из массива

0
<table class="table-striped table-bordered table-condensed">
    <tbody>
        <tr ng-if="$index%3==0" ng-repeat="permission in vm.parent.getAllPermissions()">
            <td ng-repeat="i in [0,1,2]" class="col-xs-2">
                <span>
                <input type="checkbox" checklist-model="vm.data.permissions" checklist-value="vm.parent.getPermission($parent.$index+i)"> 
                {{vm.parent.getPermissionTitle($parent.$index+i) || " "}}
                </span>
            </td>
        </tr>
    </tbody>
</table>

что мои угловые на данный момент. Мой json такой. Есть N пользователей, а также категории и разрешения

{
  "Admin": {
    "category": "admin",
    "permission": "admin"
  },
  "user": {
    "category": "user",
    "permission": "user"
  }
}

vm.getAllPermissions() возвращает все данные. Я хочу разделить пользователей и разрешения, поэтому в основном я хочу, чтобы категории были разделены на ui-tab и под каждой вкладкой - разрешения, отображаемые в виде таблицы.

Я пробовал что-то вроде этого

var permissionArray =[];
Object.keys(vmgetAllPermissions).map(function(category, key) {

for(var key in vmgetAllPermissions) {
    if(vmgetAllPermissions.hasOwnProperty(key)) {
        permissionArray.push(category,key);

    }
}

});

Это не работает, но это дает вам представление о том, что я пытаюсь сделать. вид выглядит так

Изображение 174551

администратор категории, вкладка вверху, список разрешений, в которых установлены флажки. Я почти уверен, что все, что мне нужно сделать, это предоставить категорию как параметр vm.parent.getAllPermissions но я не vm.parent.getAllPermissions хорош в угловых и JS, я предпочитаю вас спрашивать.

  • 0
    Я в пути, если у вас есть какие-либо вопросы, пожалуйста, дайте мне знать, и я проясню все через 3 часа. Подключение к Интернету отсутствует
  • 0
    Как выглядит allData ? Это карта, которую вы опубликовали?
Показать ещё 1 комментарий
Теги:

1 ответ

1
Лучший ответ

Я думаю, что все, что вам нужно сделать, это то, что вам нужно нажать одно значение за раз - надавить на объект. Таким образом, ваш код будет выглядеть так: (просто добавьте фигурные скобки)

permissionArray.push({category,key});

Вот пример: https://jsfiddle.net/yh0ugp6q/1/

  • 0
    это была намного большая проблема, чем эта, но я приму ваш ответ, так как я решил проблему - я должен был сопоставить объекты

Ещё вопросы

Сообщество Overcoder
Наверх
Меню