我在“/this-route”上发送了一个索引处理程序:
(defn index-handler [req]
(assoc (resource-response "index.html" {:root "public"})
:headers {"Content-Type" "text/html; charset=UTF-8"}))
(def routes ["" {"/this-route" {:get index-handler}}]) ;; works它工作得很好。
但是,当我向this-route添加任何内容时,我无法发送索引处理程序,即使我仍然可以发送基本的res/response:
(def routes ["" {"/this-route" {"" {:get index-handler} ;; doesn't work
"/something" {:get index-handler} ;; doesn't work
"/something-else" (res/response "some response") ;; works
}}])我在客户端控制台中收到错误,显示index.html行中的错误,我在这里启动我的应用程序:
<script type="text/javascript">myapp.system.go();</script>错误是"myapp未定义“。
为什么会这样,我做错了什么?
- EDIT -这是控制台中的完整错误:
Uncaught ReferenceError: myapp is not defined
at something-else:15
DevTools failed to load SourceMap: Could not load content for chrome-extension://gighmmpiobklfepjocnamgkkbiglidom/include.preload.js.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME发布于 2020-03-30 05:56:30
您的路由工作正常:
(let [routes ["" {"/this-route" {:get :some-handler}}]]
(is= (bidi/match-route routes "/this-route" :request-method :get)
{:handler :some-handler, :request-method :get}))
(let [routes ["" {"/this-route" {"" {:get :handler-1}
"/something" {:get :handler-2}
"/something-else" {:get :handler-3}}}]]
(is= (bidi/match-route routes "/this-route" :request-method :get)
{:handler :handler-1, :request-method :get})
(is= (bidi/match-route routes "/this-route/something" :request-method :get)
{:handler :handler-2, :request-method :get})
(is= (bidi/match-route routes "/this-route/something-else" :request-method :get)
{:handler :handler-3, :request-method :get}))正如cfrick所说,不知何故,你在编译和/或加载代码时遇到了问题。这就是您需要查看的地方。
https://stackoverflow.com/questions/60918018
复制相似问题