8

Tôi đã xem xét GWT. Nó có vẻ tốt đẹp, nhưng phần mềm của chúng tôi có phải làm việc mà không cần JS. Có thể không?GWT không có JavaScript?

Trả lời

12

Không, không phải vậy. GWT cung cấp một bộ công cụ cửa sổ được thiết kế đặc biệt để chạy trên máy khách, chứ không phải trên máy chủ. Mã bị suy thoái (ví dụ: không phải javascript) sẽ cần phân phối HTML hoàn chỉnh cho trình duyệt mà GWT không thực hiện. Nó biên dịch mã java của bạn thành một tệp javascript được gửi tới máy khách và xây dựng giao diện người dùng bằng thao tác DOM trên máy khách. Sau đó, có một số mã để nói chuyện với máy chủ, một số ngầm, một số được viết bởi chính bạn. Mô hình này không cho vay tốt để thoái hóa một cách duyên dáng.

Cách duy nhất để giảm bớt một cách duyên dáng là cung cấp giao diện người dùng thứ hai, không phải javascript hoặc sử dụng bộ công cụ khác không hiển thị giao diện người dùng trên máy khách nhưng cung cấp HTML. Lấy làm tiếc.

+0

Đủ công bằng. Vì vậy, GWT, bởi bản chất của nó sẽ chỉ tạo ra các tập tin js. – Loki

+0

có - đó là vấn đề. Tương tác cao, rất ấn tượng. Nhưng Javascript thuần túy. –

2

Bạn có thể làm suy giảm một cách duyên dáng bằng cách tạo cấu trúc html vừa đủ '' (với bài đăng biểu mẫu, trình đơn được liên kết, v.v.) và sau đó gắn GWT vào từng phần của cấu trúc đó. Ví dụ: tạo HTML thả xuống động, thay thế liên kết đến trang khác bằng thành phần mở hộp đèn hoặc thay thế liên kết đến một trang khác bằng yêu cầu http XML để thực hiện điều tương tự (ví dụ: bỏ phiếu).

Tôi đã thực hiện điều này một số lần cho khách hàng.

Đó là cách ngược lại mà hầu hết GWT được phát triển, nhưng nó có thể hoạt động.

2

Tôi đã tự tìm hiểu vấn đề này khi thiết kế trang web của mình. GWT không thực sự tốt hơn là chỉ viết các tệp Javascript ở chỗ cú pháp của chúng gần giống nhau. Lợi ích thực sự xuất hiện khi bạn chia sẻ thư viện máy khách và máy chủ. Hy vọng rằng bạn đã giải quyết vấn đề này trong hai năm qua, nhưng ở bất kỳ mức nào dưới đây là một vài ví dụ mà bạn có thể thấy hữu ích.

Tạo Gmail: Với GWT, bạn có thể tạo một EmailFormatter trong gói được chia sẻ thực hiện đánh dấu danh sách email để máy chủ của bạn không phải làm như vậy. Sau đó, bạn có thể thêm hỗ trợ cho các trình duyệt cũ ("phiên bản cũ hơn") bằng cách sử dụng cùng lớp EmailFormatter ở phía máy chủ.

Xác minh biểu mẫu: Mặc dù hoàn toàn cần thiết từ quan điểm bảo mật để xác thực phía máy chủ đầu vào của người dùng, thuận tiện hơn cho hầu hết người dùng khi có Javascript kiểm tra biểu mẫu trước khi gửi. Bạn có thể sử dụng cùng một mã Java với GWT để làm điều này.

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