Cú pháp hoàn toàn mới này có vẻ tốt và bây giờ tôi đang nghĩ nó thực sự là. Tôi đã từ bỏ cố gắng để làm cho nó hoạt động và ở đây tôi nhận thấy rằng thậm chí không phải là ví dụ chính trong trang Angular 2 hoạt động. Nếu bạn mở ví dụ trực tiếp và bạn thử nó chỉ cần nhấp vào nó hoạt động mát mẻ và bạn có thể thấy đường dẫn trong url được thay đổi, nhưng nó chỉ thay đổi chuỗi đường dẫn không thực sự tồn tại, nếu bạn sao chép url của bạn và gửi nó với ai đó, họ sẽ gặp phải lỗi sau:Router của Angular 2 có bị hỏng khi sử dụng các tuyến HTML5 không?
{
"statusCode": 404,
"error": "Not Found"
}
Địa ngục ngay cả khi bạn vừa mới làm mới trang, bạn sẽ gặp lỗi tương tự.
Nếu bạn muốn tạo lại vấn đề mở URL này:
https://angular.io/resources/live-examples/tutorial/ts/plnkr.html
Nhấp vào "Khởi động xem trước trong một cửa sổ riêng biệt" nút ở phía trên bên phải của xem trước sống, chờ đợi cho nó để tải trang và khi bạn thấy URL thay đổi một cái gì đó như:
http://run.plnkr.co/KMzM8hkaCyhlnf3b/dashboard
làm một F5 để làm mới trang và bạn sẽ nhận được lỗi.
Đây có phải là lỗi, cách thức hoạt động của nó, hoặc điều gì đó mà họ thậm chí không thử? Có phải họ đã bắt đầu một lần nữa với việc triển khai bộ định tuyến không tốt hay tôi hoàn toàn bị mất về cách tôi đang cố gắng làm cho nó hoạt động? Làm ơn cho lời khuyên !
Tôi đoán tôi nên sử dụng tính năng triển khai thẻ bắt đầu bằng #.
Tôi không hiểu tại sao nó xảy ra, đó là lý do tại sao tôi nghĩ rằng nó quá tốt là đúng. Những gì tôi đã không cam kết là mục đích của việc sử dụng nó theo cách đó và thậm chí tệ hơn là, mặc định các chức năng trong chế độ đó là gì.Chuyển hướng đến chỉ mục có thể có ý nghĩa NẾU ứng dụng của bạn không phải là phía máy khách và vì vẻ ngoài của nó, cách tiếp cận mới nhất cho các ứng dụng nhanh sử dụng bộ khung này không triển khai chương trình phụ trợ, chúng chỉ tiêu thụ các dịch vụ. Tôi chưa có phụ trợ. Tuy nhiên đó là trường hợp sử dụng/kịch bản hợp lệ. Tôi sẽ thử nó và nếu nó hoạt động tôi sẽ chấp nhận câu trả lời của bạn, cảm ơn bạn =) – Langley
Yea có vẻ như bạn có thể làm cho nó hoạt động theo một kịch bản và cấu hình cụ thể mà họ không bao giờ chỉ định. Tôi vẫn không nghĩ đó là hành vi mặc định hoặc ít nhất họ cũng nên nói cho bạn biết về vấn đề này. Cảm ơn sự giúp đỡ Sr.! Điều này cũng đã giúp: http://stackoverflow.com/questions/31415052/angular-2-0-router-not-working-on-reloading-the-browser – Langley
@Langley FYI, đây vẫn là vấn đề mở trong thảo luận trong repo 'angular2'. https://github.com/angular/angular/issues/4735. Tức là 'HashLocationStrategy' là một hack cần thiết trước khi các trình duyệt bao gồm hỗ trợ HTML5' history.pushState() '. 'PathLocationStrategy' là cách tiếp cận chính xác, nhưng chúng ta cần các công cụ tốt hơn để giúp các nhà phát triển front-end không có nhiều kiến thức back-end được bắt đầu. –