Конфигурация сервера Clojure для SPA с клиентской маршрутизацией
Я работаю над одностраничным приложением ClojureScript с маршрутизацией на стороне клиента. Я хотел бы реализовать простой сервер, который бы обслуживал мой index.html, а также CSS/JS. Идея состоит в том, чтобы передать все запросы, кроме /static/*, клиентской стороне и разрешить моему SPA работать с ним.
Это оказалось удивительно сложно. Ниже приведен фрагмент кода, но он не работает.
(defroutes routes
(GET "/" []
(resp/content-type template "text/html"))
(context "/static" []
(route/resources "/css" {:root "css"})
(route/resources "/js" {:root "js"}))
(route/not-found
(resp/content-type template "text/html")))
Я использую boot-http с пользовательским обработчиком. Есть ли шанс, что это может вызвать это?
1 ответ
Похоже, вам вообще не нужен бэкэнд; вы можете разработать с помощью boot-http/boot-reload и развернуть его на gh-pages, firebase, aws или любом статическом хосте файлов. Смотрите https://github.com/martinklepsch/tenzing для шаблона проекта #nobackend.