Как использовать многомерный массив объектов в угловых JS?

0

Я пытаюсь создать многомерный массив в угловых JS и вставлять в него объекты.

Ниже приведен фрагмент кода -

$scope.dm.Questionnaires.Q_options=[][][];
for(var i in data)
{
    if(data[i].dbObject.fieldname=="Q0001") {
        $scope.dm.Questionnaires.Q_options[1][1].push(data[i].dbObject);
    }
    else if(data[i].dbObject.fieldname=="Q0002") {
        $scope.dm.Questionnaires.Q_options[2][1].push(data[i].dbObject);
    }
}

Пытаясь получить доступ к массиву в html, как показано ниже,

<select class="input-md form-control" ng-model="dm.Questionnaires.Q1000101" ng-options="item.antHillValue for item in dm.Questionnaires.Q_options[1][1] track by item.webServiceValue">
<option value="">select</option>
</select>

Я не могу заставить это работать. Любая помощь приветствуется.

  • 1
    Объявление массива неверно
Теги:
arrays

1 ответ

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

Используйте что-то вроде этого.

$scope.dm = {};
$scope.dm.Questionnaires = {};
$scope.dm.Questionnaires.Q_options = [[[]]];

$scope.dm.Questionnaires.Q_options[0][0].push(1);

......

Вы должны проверить, существует ли массив в любом индексе или нет.

if ($scope.dm.Questionnaires.Q_options[index] == null ) {
      $scope.dm.Questionnaires.Q_options[index] = [];
}
  • 0
    Спасибо! это работает отлично!

Ещё вопросы

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