Raw notes on reagent-react interop.
Reagent by default creates class components from Hiccup.
React hooks only work with functional components.
create-element creates functional components from Clojure functions,
but need to use as-element inside to create markup.
as-element: Hiccup vector -> React element (virtual dom)create-class: Construct a JS React class component from a map of functions,
e.g. to implement lifecycle handlers.  Need to define a render function,
supports :reagent-render for Hiccup support.create-element: Create a JS React element, like React.createElement,
needs JS props + elements.:r>: Shortcut related to create-element (TODO: Usage example):f>: Shortcut to create function components from Reagent components,
supports hooks and atomsadapt-react-class: React JS class -> Reagent component:>reactify-component: Takes (fn [props]) -> hiccup and creates a JS
component to be passed to JS react components(defn example []
  (let [[count set-count] (react/useState 0)]
    [:div
     [:p "You clicked " count " times"]
     [:button
      {:on-click #(set-count inc)}
      "Click"]])))
(defn root []
 [:div
  [:f> example]])
merge-props - before passing them down?with-let - let, but evaluate only once.  Instead of inner fn?Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs | 
| ← | Move to previous article | 
| → | Move to next article | 
| Ctrl+/ | Jump to the search field |