我确实一直在为cljsjs库而苦苦挣扎,并且我可能花了整整2天的时间来玩react-bootstrap互操作以及clojurescript中的各种material库。

基本上,我只希望能够将UI组件添加到ClojureScript项目中。如果您可以推荐比cljsjs/react-mdl更好的东西,我会喜欢的。如果您知道如何解决当前的错误,我也很乐意!

我目前有:

(ns project.views
  (:require [cljsjs.react-mdl]))

(def Button (aget js/ReactMDL "Button"))


我得到错误:

ReactMDL is not defined

在javascript控制台中。

我只想在屏幕上显示一个react-mdl按钮。

我正在使用此包装器:
https://github.com/cljsjs/packages/tree/master/react-mdl

对于此库:
https://github.com/tleunen/react-mdl

这些关于cljsjs的互操作指令:https://github.com/cljsjs/packages/wiki/Using-Packages

如果重要的话,我也使用clojure的reagentreframe。老实说,我只是想让一些项目使用Clojure和相关的库构建,如果您可以建议我使用其他堆栈,请这样做!

我只是在忽略一些简单的事情吗?

最佳答案

我会回答让按钮按一下。

我没有使用任何cljs库。我只是使用提供的cssjs。它们需要在您的标记中,以及指向Material Design图标库的链接。

这是Reagent中的示例:

[:input {:type "submit"
:className "mdl-button mdl-js-button mdl-button--fab mdl-js-ripple-effect mdl-button--colored"
:value "ok"}]


而在Om Next中:

(defui MDSubmitButton
  Object
  (render [this]
    (dom/button (clj->js {:className "mdl-button mdl-js-button mdl-button--fab mdl-js-ripple-effect mdl-button--colored"})
                (dom/i (clj->js {:className "material-icons"}) "add"))))
(def md-submit-button (om/factory MDSubmitButton {:keyfn :id}))


我对这一切还是很陌生的,但是我的首选是只使用css,将Javascript最小化,然后在项目使用的任何React包装器中手动构建组件。

07-28 02:42
查看更多