2012-02-01 36 views
7

Dường như có nhiều thư viện và gói (Crossroads.js, v.v.) hỗ trợ chức năng định tuyến javascript này, nhưng tôi đang gặp khó khăn khi hiểu một kịch bản có giá trị này.tại sao sử dụng định tuyến javascript?

Bất cứ ai quan tâm để đi súp-to-hạt vào những tình huống mà điều này là hữu ích?

Nền của tôi là với lập trình ASP.NET (biểu mẫu web) và một số javascript/jquery nghiệp dư.

+0

Bạn đang nói về định tuyến đường trong biểu đồ? –

+0

không, dọc theo các dòng của chức năng bạn nhận được với một gói như Crossroads.js. – skeej

+1

Javascript đang phát triển rất nhiều hiện nay, có rất nhiều xu hướng về việc làm cho nó trở nên confortable trên quy mô lớn, vì nó không phải là. Sẽ có các mô hình vững chắc và thực tiễn tốt nhất, nhưng những thứ như crossroads.js là những người tiên phong trên cơ sở mới. Những người tiên phong khéo léo. – SoonDead

Trả lời

5

Nó cung cấp cho bạn tùy chọn để xử lý hành vi của khách hàng mà không phải tải lại toàn bộ trang như thể có trường hợp khi bạn đang xử lý phía máy chủ định tuyến.

Nó mở ra khả năng cho cách thiết kế đáp ứng và tương tác hơn thay vì tải lại toàn bộ trang mỗi khi thay đổi tuyến đường, bạn chỉ có thể đặt lại phần của trang web thay đổi cho một tuyến đường cụ thể. Đồng thời nó giúp giảm tải trên máy chủ khi bạn giảm giao tiếp máy chủ khách hàng để chỉ gửi dữ liệu cần thiết để hiển thị trang cho khách hàng để xử lý nó (hiển thị lượt xem, v.v.)

Nhờ sử dụng backbone.js hoặc các khung công tác mvc (giống như) khác, bạn có thể giảm máy chủ của mình để chỉ hiển thị REST API để làm việc và nhận dữ liệu mà không cần phải xử lý hiển thị và bạn đang chuyển một số - hoặc thậm chí hầu hết các lần - của logic tới khách hàng.

Hầu hết các ứng dụng web hiện đang tận dụng định tuyến phía máy khách - bất kỳ thứ gì từ Gmail đến twitter.

+2

bạn có thể đưa ra một ví dụ cụ thể không? những lợi ích trên một kịch bản mà tôi có một ứng dụng trang duy nhất và mỗi phần chính có một số điểm cuối ajax tiếp xúc trên máy chủ làm mới phần trang tương ứng với nội dung thích hợp là gì? – skeej

+2

Có định tuyến thích hợp thay vì ajax callbacks rải rác ở đây hoặc có nghĩa là nó dễ dàng hơn và thanh lịch hơn cho người dùng như cho anh ta nó vẫn là internet cũ tốt với địa chỉ URL sạch của nó mà họ có thể đánh dấu, sao chép và dán vào tài liệu, bạn bè vv và dễ dàng truy cập trạng thái đã cho của trang/ứng dụng bằng cách chỉ cần truy cập địa chỉ. Người dùng ngày càng quen với những trải nghiệm và trình duyệt tương tác và liền mạch hơn, đồng thời nhận được nhiều hơn thì đủ nhanh để phân phối chúng. –

+0

Nó chỉ là một bước tiến từ các ứng dụng nặng và thích ứng với các phương pháp hay nhất mà chúng tôi đã học được từ việc phát triển phía máy chủ và các khung công tác MVC của chúng. (không phù hợp :)) –

1

OK- Tôi nghĩ bây giờ tôi đã hiểu rõ hơn. Nó chỉ là một lớp trừu tượng giữa một người gọi hàm và callee. Thay vì đính kèm sự phụ thuộc mã hóa giữa người gọi và callee, bạn có thể giới thiệu một hệ thống định tuyến sẽ kết nối hai hệ thống dựa trên một số cấu hình và cung cấp các chức năng bổ sung như xác thực hoặc liên kết nhiều callees với người gọi. Sau đó, bạn có thể tham khảo các hành động của bạn với các xử lý yên tĩnh (ví dụ: "/ getCoffee/decaf") cũng có thể được tạo động (vì chúng chỉ là các chuỗi).

Tôi vẫn đang cân nhắc lợi ích tương đối của lược đồ định tuyến so với việc tạo sự kiện tùy chỉnh.

Các vấn đề liên quan