Golang Fiber ialah rangka kerja web berprestasi tinggi yang digunakan secara meluas dalam pembangunan bahasa Go. Walau bagaimanapun, kadangkala apabila menggunakan Fiber untuk membuat reka letak, anda mungkin menghadapi masalah apabila templat tidak dilaksanakan dengan betul. Ini mungkin disebabkan oleh pepijat dalam kod atau isu konfigurasi. Dalam artikel ini, editor PHP Apple akan menganalisis masalah ini secara terperinci dan menyediakan penyelesaian untuk membantu anda mengatasi cabaran ini. Sama ada anda seorang pemula atau pembangun yang berpengalaman, anda boleh mendapatkan pengetahuan dan kemahiran yang berguna daripada artikel ini untuk meningkatkan keupayaan anda dalam pembangunan Golang Fiber.
Saya cuba menggunakan reka letak dengan templat yang berbeza,
├── main folder ├── cmd └── main.go ├── controllers ├── models ├── views └── partials └── layout.html └── index.html └── dashboard.html └── login.html └── public └── sample.png
Dalam layout.html
saya saya ada
<!doctype html> <html lang="en"> <head> </head> <body> <h1>loaded from layout</h1> {{ template . }} </body> </html>
Dalam dashboard.html
{{ define "dashboard" }} <h1>dashboard</h1> {{ end }}
Dalam login.html
{{ define "login" }} <h1>login</h1> {{ end }}
Apabila saya memaparkan papan pemuka melalui pengawal, ia hanya memuatkan login.html dan ia sentiasa mendapat fail html terakhir
// controller func dashboard(c *fiber.ctx) error { return c.render("dashboard", fiber.map{ "title": "login | selectify admin", }, "partials/layout") }
Dalam fail utama saya sudah memberitahu di mana untuk mencari paparan
//main.go // create a new HTML engine template_engine := html.New( "./views", ".html", ) // create a new Fiber app app := fiber.New(fiber.Config{ Views: template_engine, // set the views engine ErrorHandler: func(c *fiber.Ctx, err error) error { return utils.HandleError(c, err) }, })
Ralat berlaku "Templat: 'separa/susun atur' ialah templat yang tidak lengkap atau kosong" Bagaimana untuk menghantar atau membuat fail html yang betul menggunakan satu susun atur?
go versi 1.19 edisi kelima 2 "github.com/go fiber/template/html"
Saya jumpa jawapannya, Kami perlu menggunakan {{embed}} dan bukannya templat, maka ia akan mengandungi templat yang betul yang anda hantar daripada pengawal
<!DOCTYPE html> <html lang="en"> <head> </head> <body> <h1>Loaded from Layout</h1> {{ embed }} </body> </html>
Atas ialah kandungan terperinci Serat Golang c. Susun atur rendering tidak menguatkuasakan templat yang betul. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!