Golang html/mẫu xác định
Tôi muốn nói với bạn rằng nền tảng của tôi Các khóa học mẫu về web vừa mới ra mắt. Thưởng thức các khóa học video dễ theo dõi về phát triển web trong Go. Đảm bảo kiểm tra ưu đãi đặc biệt mà tôi dành cho những người ủng hộ sớm. Show Ở đây, tôi trình bày một ví dụ khác mà tôi đã thực hiện để theo dõi bài viết trước của mình về “Cách sử dụng các mẫu trong Golang”. Tôi sẽ sử dụng một số kỹ thuật cơ bản khi sử dụng các mẫu Golang (Ngôn ngữ Go) từ bài viết đó. Ngoài dự án này, tôi cũng quyết định sử dụng các mẫu lồng nhau và viết các hàm đơn giản của riêng mình để sử dụng bên trong các mẫu Vì đây là một bài tập sử dụng các mẫu Golang chứ không phải trong thiết kế web, tôi quyết định tìm kiếm một thiết kế trang hiện có. Do đó, tất cả hình ảnh, CSS và JS đều được giữ nguyên văn từ Mr. Video hướng dẫn của Web Designer (mã được sử dụng miễn phí). Mặt khác, HTML từ hướng dẫn rõ ràng đã được điều chỉnh để sử dụng trong các mẫu Tại đây, bạn có thể xem trang web mà chúng tôi sẽ tạo, dựa trên dữ liệu sản phẩm đã cho Trang web phản hồi nhanh, do đó, nó thích ứng với các độ rộng màn hình khác nhau và khi bạn nhấp vào một trong các 'sản phẩm', bạn sẽ thấy một cửa sổ bật lên có mô tả và một số nút Trong ví dụ ban đầu từ Mr. Nhà thiết kế web, các sản phẩm và mô tả của chúng được mã hóa cứng trong tệp HTML. Sử dụng các mẫu và hiển thị chúng với dữ liệu (khác nhau) có thể tránh mã hóa cứng các sản phẩm và mô tả của chúng Trong phần tiếp theo, trước tiên tôi sẽ chỉ cho bạn chương trình thực tế sẽ phân tích cú pháp và hiển thị các mẫu, sau đó xuất tệp HTML đã tạo. Sau đó, tôi sẽ cho bạn thấy các mẫu khác nhau trông như thế nào và thảo luận về một số kỹ thuật tôi đã sử dụng trong các mẫu đó. Chương trình Golang thực tế Đây là chương trình Golang sẽ thực hiện tất cả công việc Trong dòng 3–8, chúng tôi nhập các gói cần thiết. Các gói Trong các dòng 10–17, chúng tôi xác định Ngoài ra, lưu ý rằng số sao là số dấu phẩy động trong khoảng từ 0 đến 5. Lý do chúng tôi sử dụng loại Ở dòng 19–25, tôi đã tạo hai hàm vì tôi không hài lòng với những hàm do gói Trong các dòng 29–36, chúng tôi xác định dữ liệu sẽ được hiển thị trong các mẫu. Trong ví dụ này, dữ liệu được mã hóa cứng. Trong một cài đặt thực tế hơn, dữ liệu này có thể sẽ được lưu trữ trong một loại cơ sở dữ liệu nào đó. Lưu ý rằng dữ liệu tuân theo định nghĩa của cấu trúc Trong dòng 38, chúng tôi thêm tên tệp của tất cả các mẫu vào một lát Trong các dòng 40–43, tên thư mục Trong dòng 45, chúng tôi phân tích cú pháp các mẫu bằng Trong các dòng 47–48, chúng tôi kết xuất các mẫu thành bộ đệm byte. Để đảm bảo rằng trình kết xuất bắt đầu với mẫu Trong các dòng 50–54, bộ đệm byte được hiển thị được xuất ra tệp HTML có tên là Ở đây tôi thảo luận về tất cả các mẫu được sử dụng cho dự án này Mẫu “trang”Đây là mẫu xác định một trang web hoàn chỉnh. Nó gọi ba mẫu khác; Ở dòng 1, điều cần thiết là xác định Trong dòng 3, lưu ý rằng một dấu chấm được thêm vào khi mẫu Mẫu “tiêu đề”Mẫu này được sử dụng để hiển thị tiêu đề HTML điển hình tải phông chữ, kiểu và mã JavaScript Lưu ý rằng chúng tôi sử dụng các từ khóa Ngoài ra, hãy lưu ý dấu '-' trước dấu ngoặc kép kết thúc. Dấu hiệu này báo cho trình kết xuất xóa khoảng trắng và dòng mới. Theo kinh nghiệm của tôi, bạn sẽ cần thử nghiệm với vị trí của các dấu '-' này Để đạt được đầu ra mong muốn, đôi khi bạn cần đặt dấu '-' sau dấu ngoặc kép bắt đầu, đôi khi trước dấu ngoặc kép kết thúc và đôi khi ở cả hai vị trí Mẫu “nội dung”Đây là mẫu hiển thị phần thân của tệp HTML Lý do để xác định nội dung riêng biệt với đầu trang và chân trang là chúng ta có thể nhanh chóng tạo các trang khác có nội dung khác nhưng có cùng đầu trang và chân trang—i. e. , tải cùng CSS, JS, phông chữ, v.v. Như đã đề cập trước đây, tôi đã tạo các phiên bản hàm Sprig ________ 15 và ________ 36 của riêng mình, vì tôi không hài lòng với những phiên bản trong gói đó. Điều này là do tôi có một số lỗi mà tôi không thể loại bỏ. Tôi cũng quyết định gọi hàm trừ của mình là Trong các dòng 5–12, chúng tôi lặp lại tất cả các sản phẩm trong dữ liệu của mình. Đối với mỗi sản phẩm, chúng tôi tạo các biến mẫu nội bộ Ở các dòng 16–42, chúng ta làm tương tự như trên, nhưng chúng ta cũng trích xuất các thuộc tính Ngoài ra, ở dòng 22, chúng ta tạo một danh sách có tên là Sau đó, ở các dòng 23–32, chúng tôi tạo một vòng lặp để hiển thị các ngôi sao. Về cơ bản, chúng tôi có ba loại sao mà chúng tôi có thể hiển thị. sao đầy đủ, nửa sao và sao trống Sử dụng câu điều kiện, chúng ta xác định xem số sao của một mục ( Mẫu “chân trang”Không có gì đặc biệt xảy ra ở đây ngoại trừ việc xác định mẫu là Chạy trình tạo HTML và xem kết quả Đảm bảo rằng tệp Chỉ cần gõ Bây giờ bạn có thể mở tệp Làm cách nào để phân tích mẫu HTML trong Golang?Mẫu Golang Phân tích tệp và thực thi
. Sau đó, Mẫu được phân tích cú pháp bằng cách sử dụng hàm ParseFile() từ gói html/mẫu . Thao tác này tạo một mẫu mới và phân tích cú pháp tên tệp được chuyển làm đầu vào.
HTML theo khuôn mẫu là gì?Phần tử HTML cơ chế giữ HTML không được hiển thị ngay lập tức khi một trang được tải nhưng có thể được khởi tạo sau đó trong thời gian chạy bằng JavaScript. Think of a template as a content fragment that is being stored for subsequent use in the document.
mẫu đi là gì?Mẫu Go là một phương pháp mạnh mẽ để tùy chỉnh đầu ra theo bất kỳ cách nào bạn muốn , cho dù bạn đang tạo trang web hay gửi e-mail . Có hai gói hoạt động với các mẫu - văn bản/mẫu và html/mẫu.
HTML có phải là ngôn ngữ mẫu không?Ngôn ngữ mẫu HTML rất dễ học và các tính năng của ngôn ngữ này được cố ý giới hạn để đảm bảo rằng ngôn ngữ luôn đơn giản và dễ hiểu. Nó cũng có các cơ chế mạnh mẽ để cấu trúc đánh dấu và gọi logic, đồng thời luôn thực thi tách biệt nghiêm ngặt các mối quan tâm giữa đánh dấu và logic. |