Сублимируйте и напишите об этом фанфик.
Ну вот и лишилась я девственности, отчаявшись добиться от своего находящегося в отпуске ментора вменяемого ответа на свои вопросы, и отправившись на stackoverflow. Ну, а пока я в надежде найти того, кто сможет ответить на мой нубский вопрос, спрошу - а нет ли тут случаем кого-то, кто сечет в angularjs? Или знает, у кого еще можно спросить?
Anyone?
Anyone?
Суть приложения в том, что есть данные о некоторой компании. К этим данным можно добавить данные о контактных лицах: $scope.company =
Данные в массив contacts добавляются через таблицу:
как только контактное лицо добавлено, ng-repeat должен сгенерировать новую пустую строку для добавления нового контактного лица
я думала это сделать через $scope.$watch, чтобы отслеживать изменения в contacts и при этих изменения, соответственно, пушить пустой объект в массив
теперь вопросы:
как правильно прописывается $scope.$watch для вложенного в массив массива?
Правильно ли это:
как правильно прописывается push для вложенного массива? С обычным все просто и ясно, а вложенный что-то у меня не получается:
скорее всего неправильно:
вот
Кроме того мне кажется что можно использовать метод $watchCollection если правильно прописать его именно для нестед массива так выйдет менее дорого в плане ресурсов и будет работать только для изменений внутренних массивов (контактов) а не для изменения в основном массиве и всех вложеных.
Во втором случае должно помочь вот это решение для нестед массивов: stackoverflow.com/questions/36938458/angular-pu...
Сразу скажу что сам не мастер по ангуляру и может всё что я написал выше полный бред
Просто нужно точно указать что именно делать если замечено изменение внутри основного массива и/или дочерних массивах.
для этого у меня как раз функция onContactsChange, которая по идее и должна вызываться при изменениях внутри contacts. но, судя по всему, мой watch не работает, пока даже не входит в цикл проверки.
Кроме того мне кажется что можно использовать метод $watchCollection если правильно прописать его именно для нестед массива так выйдет менее дорого в плане ресурсов и будет работать только для изменений внутренних массивов (контактов) а не для изменения в основном массиве и всех вложеных.
в том-то и вопрос, как это правильно прописать) с простым scope работает идеально, а вот с нестед начинаются проблемы
Во втором случае должно помочь вот это решение для нестед массивов: stackoverflow.com/questions/36938458/angular-pu...
ага, натыкалась уже на это дело)) но надо еще разбираться и разбираться)
Сразу скажу что сам не мастер по ангуляру и может всё что я написал выше полный бред Надеюсь хотя бы направил в нужное русло.
если интересно, вот этот самый пуш:
и все с моим watch было в порядке, кроме того, что я где-то просмотрела лишнюю фигурную скобку, которую, почему-то visual studio code пропустил как родную))
в общем, работает