Cách được khuyến nghị để tạo HTML từ biểu thức X trong Racket là gì? Có vẻ như response/xexpr
sẽ làm điều đó, nhưng có vẻ như được thiết kế để phục vụ phản hồi http. Điều duy nhất tôi cần là tạo chuỗi HTML từ danh sách Racket (hoặc biểu thức X), không cần phải có máy chủ web liên quan.Tạo HTML trong Racket
Trả lời
Chức năng xexpr->string trong thư viện xml
phải làm những gì bạn đang hỏi, nếu tôi không nhầm. Đối với một ví dụ mà nó được sử dụng, bạn có thể xem here, trong đó ví dụ sử dụng nó để tạo ra phản hồi HTML cho một ứng dụng máy chủ web đơn giản.
> (xexpr->string '(html (head (title "Hello")) (body "Hi!")))
"<html><head><title>Hello</title></head><body>Hi!</body></html>"
Nếu bạn sẵn sàng đổ xexprs cho một cơ sở thuận tiện hơn, thì có một ngôn ngữ mới được sử dụng để tạo trang web Racket. Nó chưa được ghi chép (do đó nó vẫn còn mới và không công khai), nhưng bạn có thể thấy nó được sử dụng như thế nào trong these sources. Như một ví dụ nhanh đó chứng tỏ nó, chạy này:
#lang scribble/html
@(define name "foo")
@html{@head{@title{@name}}
@body{@h1{@name}}}
Một ví dụ khác sử dụng nó như là một thư viện:
#lang at-exp racket/base
(require scribble/html)
(define (page name)
(output-xml
@html{@head{@title{@name}}
@body{@h1{@name}}}))
@page{foo}
Các at-exp
là không cần thiết, nó chỉ làm cho nó dễ dàng để viết rất nhiều văn bản trong mã. (Và nó cũng hữu ích với xexprs nữa.)
Sự khác biệt chính là ở ngôn ngữ này, các thẻ HTML thực sự là các ràng buộc, giúp thuận tiện cho việc duy trì mã. Nó cũng rất linh hoạt trong những gì nó có thể lấy làm văn bản - ví dụ, không cần phải giữ nó vào danh sách nghiêm ngặt các chuỗi và thẻ phụ, vì vậy bạn không bao giờ phải đối mặt với các câu hỏi như nơi sử dụng append-map
v.v.
- 1. Lỗi khi xác định trong Racket
- 2. Racket Interactive vs Compiled Performance
- 3. Lợi thế của Arc over Racket
- 4. Cách nhận phản hồi html từ chuỗi url? (Đề án/Racket)
- 5. Làm cách nào để tạo tập tin thực thi được liên kết động trong Racket?
- 6. Nhập khẩu mô-đun chồng chéo trong Racket
- 7. Làm cách nào để lấy tên chương trình trong Racket?
- 8. Đặt giá trị đối số mặc định trong Racket
- 9. Tạo URL trong HTML helper
- 10. Macro Racket có thể lấy đối số từ khóa không?
- 11. Tạo email HTML trong Outlook 2013
- 12. Tạo một sơ đồ trong HTML
- 13. Cách tạo phần tử HTML trong Qt?
- 14. Tạo nút đa mục đích trong html
- 15. Tạo tài liệu HTML trong python
- 16. Tạo pdf từ html trong golang
- 17. Tạo html khá khác trong Python
- 18. Tạo html cho SEO
- 19. jQuery: tạo html
- 20. Có ai đang sử dụng Racket thương mại không?
- 21. Tạo kiểu HTML do Microsoft tạo ra
- 22. Tôi cần trợ giúp cài đặt PLT Racket, tôi đã chuyển thư mục Racket vào Ứng dụng nhưng tôi không biết cách sử dụng lệnh raco trong terminal
- 23. Làm thế nào để phù hợp, trong trận đấu trong Racket?
- 24. Trình tạo HTML cho .NET?
- 25. tạo thanh thực đơn HTML
- 26. Tạo một trang HTML JavaDoc
- 27. Tạo PDF từ HTML PHP
- 28. tạo mã Emmet từ HTML
- 29. Bộ lọc góc tạo html
- 30. Tạo kiểu HTML e-mail
Hoạt động như một say mê, cảm ơn! – GiantSquid