diff --git a/main.go b/main.go index 7ba66e1..0f95903 100644 --- a/main.go +++ b/main.go @@ -38,17 +38,22 @@ type Todo struct { Completed bool } +type ViewModel struct { + Todos []Todo +} + func main() { t := New() http.Handle("/public/", http.FileServer(http.FS(publicFS))) http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { - err := t.Render(w, "list.html", nil) - if err != nil { - log.Println(err) + vm := ViewModel{ + Todos: []Todo{ + {Title: "One"}, + {Title: "Two", Completed: true}, + {Title: "Three"}, + }, } - }) - http.HandleFunc("/show", func(w http.ResponseWriter, r *http.Request) { - err := t.Render(w, "show.html", nil) + err := t.Render(w, "list.html", vm) if err != nil { log.Println(err) } diff --git a/views/_footer.html b/views/_footer.html new file mode 100644 index 0000000..2a68497 --- /dev/null +++ b/views/_footer.html @@ -0,0 +1,5 @@ + diff --git a/views/_head.html b/views/_head.html new file mode 100644 index 0000000..3347357 --- /dev/null +++ b/views/_head.html @@ -0,0 +1,5 @@ + + +todogo • TodoMVC + + diff --git a/views/_task.html b/views/_task.html new file mode 100644 index 0000000..d778487 --- /dev/null +++ b/views/_task.html @@ -0,0 +1,8 @@ +
  • +
    + + + +
    + +
  • diff --git a/views/common.html b/views/common.html deleted file mode 100644 index 5a3066b..0000000 --- a/views/common.html +++ /dev/null @@ -1 +0,0 @@ -

    Commonest

    diff --git a/views/layout.html b/views/layout.html index 0e3eef2..42925f9 100644 --- a/views/layout.html +++ b/views/layout.html @@ -1,73 +1,10 @@ - - - Template • TodoMVC - - + {{template "_head.html" .}} -
    -
    -

    todos

    - -
    - -
    - - - -
    - - -
    - - - - + {{template "content" .}} + {{template "_footer.html" .}} diff --git a/views/list.html b/views/list.html index a5f6bd7..44c4f88 100644 --- a/views/list.html +++ b/views/list.html @@ -1,4 +1,37 @@ {{define "content"}} -

    List

    -{{template "common.html" .}} +
    +
    +

    todos

    + +
    + +
    + + + +
    + + +
    {{end}} diff --git a/views/show.html b/views/show.html deleted file mode 100644 index 6dd233c..0000000 --- a/views/show.html +++ /dev/null @@ -1,3 +0,0 @@ -{{define "content"}} -

    Show

    -{{end}}