templ start
This commit is contained in:
parent
c2caf1d284
commit
24722ee61c
7 changed files with 598 additions and 171 deletions
46
main.go
46
main.go
|
|
@ -1,24 +1,15 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"io"
|
||||
"net/http"
|
||||
"os"
|
||||
"piekarnikgosi/templates"
|
||||
)
|
||||
|
||||
func saveFile(t *template.Template, name string, data any) {
|
||||
file, err := os.Create("www/" + name + ".html")
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
defer file.Close()
|
||||
err = t.ExecuteTemplate(file, name+".gohtml", data)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
type Product struct {
|
||||
Name string
|
||||
Image string
|
||||
|
|
@ -43,18 +34,31 @@ var Cakes = []Product{
|
|||
{"Karpatka", "014", "120", ""},
|
||||
}
|
||||
|
||||
func generateHTML() {
|
||||
t, err := template.ParseGlob(`templates/*.gohtml`)
|
||||
type ComponentRenderer interface {
|
||||
Render(ctx context.Context, w io.Writer) error
|
||||
}
|
||||
|
||||
func saveFile(name string, comp ComponentRenderer) {
|
||||
file, err := os.Create("www/" + name + ".html")
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
saveFile(t, `index`, nil)
|
||||
saveFile(t, `kawiarnia`, nil)
|
||||
saveFile(t, `portfolio`, nil)
|
||||
saveFile(t, `wyroby`, Cakes)
|
||||
saveFile(t, `wyroby_torty`, nil)
|
||||
saveFile(t, `wyroby_slodkie_stoly`, nil)
|
||||
saveFile(t, `wyroby_lody`, nil)
|
||||
defer file.Close()
|
||||
|
||||
err = comp.Render(context.Background(), file)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
func generateHTML() {
|
||||
saveFile(`index`, templates.IndexPage())
|
||||
// saveFile(t, `kawiarnia`, nil)
|
||||
// saveFile(t, `portfolio`, nil)
|
||||
// saveFile(t, `wyroby`, Cakes)
|
||||
// saveFile(t, `wyroby_torty`, nil)
|
||||
// saveFile(t, `wyroby_slodkie_stoly`, nil)
|
||||
// saveFile(t, `wyroby_lody`, nil)
|
||||
}
|
||||
|
||||
func main() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue