簡體   English   中英

當我們在一個頁面中放置多個ng-init(多個部分頁面的組合)時,會出現任何問題嗎

[英]Will there by any problem when we put more than one `ng-init` in a single page (combination of multiple partial page)

頁面中有多個不完整的局部視圖。 例如。

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上調用的,所以會出現問題嗎?

在所有partial viewsng-init的代碼如下所示:

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

如果您的頁面僅處理學生信息,並且每個頁面使用不同的集合來獲取所需信息,那么就可以了。 ng-init =“ ctrl.GetStudentDetails()”我猜想會獲得針對Student_details部分視圖的學生詳細信息列表。 如果您有一個GetStudentMarks()和一個GetStudentAttendance(),並且這兩個方法都沒有共享相同的集合,那么您就很好了。

如果出於某種奇怪的原因,您正在使用GetStudentDetails()來向集合中填充有關詳細信息,分數和出勤率的信息,則它將如下所示:

  • 在詳細信息div上調用ng-init =“ ctrl.GetStudentDetails()”
  • 在標記div上調用ng-init =“ ctrl.GetStudentDetails()”
    替換以上集合的結果
  • 在考勤div上調用ng-init =“ ctrl.GetStudentDetails()”替換上面集合的結果。

顯然,您需要3組不同的結果。 因此,如果您確實想使用這種怪異的方法,則需要使用其他控制器來控制細節,分數和出勤率。 在這種情況下,我只說這很奇怪,因為您只處理一個責任,即學生,因此您絕對不希望采用這種方法,但我想無論如何我都會解釋。 如果您有一個站點,需要列出學生的詳細信息,然后對學生運行一些報告,則有必要將學生和報告的控制器分開。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM