如何在ClojureScript / Reagent中动态更改页面标题和描述

时间:2017-07-07 15:59:12

标签: reactjs clojurescript isomorphic-javascript reagent

是否有一种简单的方法可以从ClojureScript Reagent应用程序更改文档标题和描述(或其他[:html [:head [:meta标记)?例如,在每个bidi路线匹配上,更改标题和说明以匹配新的网页内容。

最好不要使用js/window,这样可以在浏览器中使用相同的代码,也可以在服务器同构预渲染中使用(我需要搜索引擎优化)。

在JavaScript / React世界中,react-document-metareact-side-effect可能会转换为Reagent组件。但这种处理副作用的方式看起来像是一个黑客,可能更简单的解决方案可以在纯ClojureScript中完成。

1 个答案:

答案 0 :(得分:2)

我没有使用bidi,而是使用类似的双向路由器silkre-frame。对于每次更改页面,我们会触发一个:set-current-route事件,该事件将集中处理。

:set-current-route的处理程序将

(set! (.-title js/document) "dynamic title")