Clojurescript 当在浏览器中直接导航到某条路线时,它不会识别该路线
我正在尝试定义一些在我的网站上使用的路线。我对它们的定义如下:Clojurescript 当在浏览器中直接导航到某条路线时,它不会识别该路线,clojurescript,reitit,Clojurescript,Reitit,我正在尝试定义一些在我的网站上使用的路线。我对它们的定义如下: (def routes ["/" ["" {:name :home :controllers [{:start (fn [& params] (js/console.log "Home")) :stop (fn [& params] (js/console.log "Leaving Home"))}]}] ["posts" [""
(def routes
["/"
[""
{:name :home
:controllers [{:start (fn [& params] (js/console.log "Home"))
:stop (fn [& params] (js/console.log "Leaving Home"))}]}]
["posts"
[""
{:name :posts
:controllers [{:start (fn [& params] (js/console.log "Posts"))
:stop (fn [& params] (js/console.log "Leaving Posts"))}]}]
(for [post blog/posts]
[(:route post)
{:name (:tag post)
:controllers [{:start (fn [& params] (js/console.log (:name post)))
:stop (fn [& params] (js/console.log "Leaving " (:name post)))}]}])]])
(defn on-navigate [new-match]
(when new-match
(re-frame/dispatch [::e/navigated new-match])))
(def router
(rf/router
routes))
(defn init-routes! []
(rfe/start!
router
on-navigate
{:use-fragment false}))
这是为了动态地为我在博客文件中定义的博客文章创建路由。当我从localhost:8280/
或localhost:8280/posts
开始并单击导航到localhost:8280/posts/blank
(博客帖子模板页面)的帖子链接时,它的效果非常好。如果我正在查看一篇文章(/posts/blank
)并刷新页面,它会打开一个空白屏幕,似乎不会加载任何已编译的javascript。如果我在/
或/posts
上重新加载,它将按预期工作,并允许我继续浏览
我有两个关于REIT的问题,我非常感谢您的帮助:
/posts
,而不能导航到/posts/
,我怎样才能用末尾的额外/
注册路线?如果我试图用相同的名称定义两个路由,它是不允许的我遇到了同样的问题。我很想知道你是否能解决这个问题。