Будет ли возникать какая-либо проблема, когда мы поместим более одной `ng-init` на одной странице (комбинация нескольких неполных страниц) - PullRequest
0 голосов
/ 29 января 2019

На странице имеется более одного частичного просмотра.Например.

1. index.cshtml is the main page.
2. _student_details.cshtml is partial page.
3. _student_marks.cshtml is partial page.
4. _student_attendance.cshtml is partial page.

Все три partial views имеют свои собственные методы для загрузки списка данных.

Эти методы для загрузки списка данных вызываются на ng-init, поэтомуможет быть какая-то проблема?

Код ng-init во всех partial views выглядит следующим образом:

<div id="student-list" ng-controller="StudentController as ctlr"
     ng-init="ctrl.GetStudentDetails()" ng-cloak>

1 Ответ

0 голосов
/ 29 января 2019

Если ваша страница имеет дело только с информацией об ученике и каждая использует свою коллекцию, чтобы получить то, что ей нужно, тогда все будет хорошо.ng-init = "ctrl.GetStudentDetails ()" Я предполагаю, что получает список сведений об ученике для частичного представления student_details.Если у вас есть GetStudentMarks () и GetStudentAttendance (), и ни один из методов не используют одну и ту же коллекцию, тогда вы можете идти.

Если по какой-то странной причине вы используете GetStudentDetails (), чтобы заполнить коллекциюинформация о деталях, оценках и посещаемости затем будет выглядеть следующим образом:

  • ng-init = "ctrl.GetStudentDetails ()" вызывается для деталей div
  • ng-init= "ctrl.GetStudentDetails ()" вызывается на отметках div
    , заменяя результаты для вышеуказанной коллекции
  • ng-init = "ctrl.GetStudentDetails ()" вызывается на посещаемости div, заменяющей результатыиз коллекции выше.

Очевидно, что вы хотите 3 различных набора результатов.Так что если вы хотите использовать этот странный подход, вам потребуется другой контроллер для получения подробной информации, оценки и посещаемости.Я только говорю, что это странно в этом случае, так как вы имеете дело только с одной обязанностью - студентами, поэтому вы определенно не хотите использовать этот подход, но решили, что я все равно объясню.Если у вас был сайт, на котором вам нужно было перечислить сведения об учениках, а затем запустить некоторые отчеты по учащимся, было бы разумно разделить контроллеры для учеников и отчетов.

...