คำถามของฉันที่เกี่ยวข้องกับวิธีการเกี่ยวกับการจัดการกับการทำรังที่ซับซ้อนของแม่ (ที่เรียกว่าpartials ) ในโปรแกรมประยุกต์ AngularJS
วิธีที่ดีที่สุดในการอธิบายสถานการณ์ของฉันคือภาพที่ฉันสร้างขึ้น:
อย่างที่คุณเห็นสิ่งนี้มีความเป็นไปได้ที่จะเป็นแอพพลิเคชั่นที่ค่อนข้างซับซ้อนและมีหลายรุ่นซ้อนกัน
แอปพลิเคชันเป็นหน้าเดียวจึงโหลดindex.htmlที่มีองค์ประกอบ div ใน DOM พร้อมกับng-view
แอตทริบิวต์
สำหรับแวดวง 1 , ng-view
คุณจะเห็นว่ามีการนำหลักที่โหลดแม่แบบที่เหมาะสมลงใน ฉันกำลังทำสิ่งนี้โดยส่งผ่าน$routeParams
ไปยังโมดูลแอพหลัก นี่คือตัวอย่างของสิ่งที่อยู่ในแอพของฉัน:
angular.module('myApp', []).
config(['$routeProvider', function($routeProvider) {
$routeProvider.
when("/job/:jobId/zones/:zoneId", { controller: JobDetailController, templateUrl: 'assets/job_list_app/templates/zone_edit.html' }).
when("/job/:jobId/initial_inspection", { controller: JobDetailController, templateUrl: 'assets/job_list_app/templates/initial_inspection.html' }).
when("/job/:jobId/zones/:zoneId/rooms/:roomId", { controller: JobDetailController, templateUrl: 'assets/job_list_app/templates/room_edit.html' })
}]);
ในวงกลม 2 , แม่แบบที่ถูกโหลดลงในng-view
มีเพิ่มเติมย่อยนำทาง การนำทางย่อยนี้จำเป็นต้องโหลดแม่แบบลงในพื้นที่ด้านล่าง แต่เนื่องจาก ng-view กำลังถูกใช้งานอยู่ฉันไม่แน่ใจว่าจะทำเช่นนี้ได้อย่างไร
ฉันรู้ว่าฉันสามารถรวมแม่แบบเพิ่มเติมภายในแม่แบบที่ 1 แต่แม่แบบเหล่านี้ทั้งหมดจะค่อนข้างซับซ้อน ฉันต้องการแยกแม่แบบทั้งหมดเพื่อให้แอปพลิเคชันง่ายต่อการอัปเดตและไม่ต้องพึ่งพาแม่แบบแม่แบบที่ต้องโหลดเพื่อเข้าถึงลูก ๆ
ในวงกลม 3คุณจะเห็นสิ่งต่าง ๆ มีความซับซ้อนยิ่งขึ้น มีความเป็นไปได้ที่เทมเพลตการนำทางย่อยจะมีการนำทางย่อยที่ 2ที่จะต้องโหลดเทมเพลตของตัวเองรวมถึงพื้นที่ในวงกลม 4
เราจะสร้างแอพ AngularJS เพื่อจัดการกับการซ้อนเทมเพลตที่ซับซ้อนได้อย่างไรในขณะที่ทำให้พวกมันแยกจากกัน