package main
import (
"database/sql"
"fmt"
"log"
"net/http"
)
type Handlers struct {
db *sql.DB
}
func NewHandlers(db *sql.DB) *Handlers {
return &Handlers{db: db}
}
func (h *Handlers) MyRoute(w http.ResponseWriter, r *http.Request) {
row := h.db.QueryRow("SELECT 1")
fmt.Println("do something with", row)
_, err := w.Write([]byte("ok"))
if err != nil {
log.Println(err)
}
}
func main() {
db, err := sql.Open("sqlite", "db.sqlite3")
if err != nil {
panic(err)
}
defer db.Close()
handlers := NewHandlers(db)
mux := http.NewServeMux()
mux.HandleFunc("/my-very-own-route/", handlers.MyRoute)
log.Fatal(http.ListenAndServe(":3000", mux))
}
package main
import (
"database/sql"
"fmt"
"log"
"net/http"
)
func makeRoute(db *sql.DB) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
row := db.QueryRow("SELECT 1")
fmt.Println("do something with", row)
_, err := w.Write([]byte("ok"))
if err != nil {
log.Println(err)
}
}
}
func main() {
db, err := sql.Open("sqlite", "db.sqlite3")
if err != nil {
panic(err)
}
defer db.Close()
mux := http.NewServeMux()
mux.HandleFunc("/my-very-own-route/", makeRoute(db))
log.Fatal(http.ListenAndServe(":3000", mux))
}
я просто думал, что оператор := присваивает новое значение уже объявленной переменой
const arrayOne = [1, 2, 3];
const arrayCopy = arrayOne.map(el => сделать_копию(el));