ฉันอ่านเกี่ยวกับ การกำหนดเส้นทาง ของ AngularJS ฉันต้องการนำไปใช้ในเว็บแอปของฉัน แต่น่าเสียดายที่ฉันมีสถานการณ์ที่ค่อนข้างยากในการเปลี่ยนเส้นทางในตอนนี้ฉันคิดว่า นี่คือวิธีที่แอปของฉันทำงานตอนนี้ (และฉันรู้ว่ามันอาจจะไม่ใช่วิธีที่ควร แต่ใช้งานได้):
ฉันมีคอนโทรลเลอร์ตัวเดียวสำหรับทั้งแอป มุมมองถูกสร้างขึ้นด้วย div บางตัว หนึ่งในนั้นคือ div เมนู มุมมองอื่น ๆ เป็นมุมมอง 'บางส่วน' เนื่องจาก Angularjs เรียกพวกเขาว่าฉันเดา แต่ปัญหาที่ฉันเห็นที่นี่คือมุมมองบางส่วนของฉันสองรายการสามารถแสดงพร้อมกันได้ (เพจถูกสร้างขึ้นในลักษณะนี้ มุมมองบางส่วนจะใช้เพียงส่วนหนึ่งของเพจเท่านั้น)
ดังนั้นสิ่งที่ฉันทำคือ: ฉันคลิกปุ่มบนเมนู -> มุมมองบางส่วนปรากฏขึ้น (ng-show) จากนั้นฉันสามารถคลิกบางอย่างในมุมมองบางส่วนนี้เพื่อเปิดมุมมองบางส่วนที่สองในหน้าเดียวกัน (เมนูและ ส่วนแรกจะต้องคงอยู่เหมือนเดิม)
ในขณะนี้ ฉันรวมบางส่วนไว้ภายใน div บางส่วนด้วย php include (ซึ่งฉันแน่ใจว่าผิดทาง) และ div มี ng-show อยู่ ดังนั้นจึงไม่มีสิ่งใดปรากฏที่จุดเริ่มต้น จากนั้นฉันจัดการการคลิกทั้งหมดในเมนูด้วยการตั้งค่าพารามิเตอร์ ng-show ของบางส่วน (มุมมอง) ทั้งหมดของฉัน ดังนั้นหากคลิกปุ่มใดปุ่มหนึ่ง ฉันจะซ่อนปุ่มอื่นๆ ทั้งหมด (ด้วย ng-click และฟังก์ชันภายในคอนโทรลเลอร์) แต่นี่เป็นงานที่น่าเบื่อและไม่ใช่วิธี เชิงมุมJS และนั่นคือสาเหตุที่ฉันถามคำถามนี้ที่นี่
ตัวอย่างของการรวมบางส่วนของฉัน (ถอดคลาส css ที่ไม่จำเป็นทั้งหมดออก ฯลฯ ):
<div ng-show="showNames">
<?php include_once("views/AREA1/names.php") ?>
</div>
และ Names.php มีองค์ประกอบเพียงไม่กี่องค์ประกอบที่มีคำสั่ง ng-repeat และคำสั่ง เชิงมุมJS อื่นๆ... ฉันมีการรวมหลายอย่างเช่นนั้นและพวกมันทำงานกับการจัดการ ng-show ได้เป็นอย่างดี แต่ตอนนี้เมื่อฉันเข้าใจแนวคิด AngularJS บางอย่างแล้ว ฉันพบว่าฉันทำผิดพลาด...
เพื่อสรุป: ฉันจะใช้เส้นทาง angularJS ได้อย่างไร (อาจใช้ ng-view ก็ได้ - ไม่จำเป็น) เพื่อแสดงมุมมองภายในเว็บแอปของฉัน (โดยคำนึงถึงสถานการณ์ที่ผมได้อธิบายไว้ข้างต้น) ฉันแค่อยากให้ผู้ใช้สามารถรู้ว่าเขาอยู่ใน "ส่วนหนึ่งของหน้า" ใดในขณะใดก็ตาม
แก้ไข: ฉันเข้าไปดู สิ่งนี้ และฉันคิดว่าฉันสามารถแก้ไขได้: ฉันต้องการโครงสร้างที่คล้ายกับโครงสร้างในตัวอย่างนี้ 2.1 การสาธิตออนไลน์ แต่ยิ่งกว่านั้น ฉันยังต้องสามารถคลิกบางอย่างบน ng-view ซึ่งควร เปิดอีกมุมมองหนึ่ง (อันแรกควรอยู่กับที่) มีความคิดใด ๆ ว่าจะทำสิ่งนี้ให้สำเร็จได้อย่างไร?