Hi,
I have been playing around and like it so far.
I experience some behavior here where I wonder if it is intended or if I am
doing something wrong.
I have a main-page which I mount like this:
(dom/mount! root (main-page))
and which looks like this:
(defn main-page []
[...
[:div#content
[(rx ((sess/get :current-page)))]]...
it loads the current page into the content div, this works.
Now I have one page which looks like this:
(defn sub-page []
[:div
; ... some forms
[(rx (di-table))]])
(defn di-table []
[:table
[:tbody
(for [di (sess/get :dis)]
[:tr [:td (:name di)]
[:td (:host di)]
[:td (str (:port di))]
[:td [:button {:id (:id di) :on-click #(delete-docker-instance (:id
di))} "Delete"]]])]])
It works as it rerenders when I change the state, however, it rerenders the
whole page and not only the table, which I wouldn't expect. Is it possible
to only rerender the table? I am using 0.1.0
Best Regards,
Sven
Am Montag, 17. November 2014 03:20:40 UTC+1 schrieb Aaron:
>
> freactive (pronounced "f reactive" for functional reactive) is a new high
> performance, pure Clojurescript, declarative DOM library:
> https://github.com/aaronc/freactive
>
> It has a syntax very similar to that of Reagent and was in fact inspired
> by Reagent, Om, and others.
>
> I came up with it when I was doing some DOM programming after having
> spending a fair amount of time working with JavaFX (see my soon to be
> announced library fx-clj: https://github.com/aaronc/fx-clj). I thought Om
> and Reagent were very nice to work with (and actually inspired some what I
> did with fx-clj), but I felt from my desktop GUI experience, that I could
> take things a few steps further.
>
> freactive's main advantages over existing solutions are probably built-in
> animations support and slightly higher performance.
>
> Here are it's goals from the README:
>
> - Provide a *simple, intuitive API
> <https://github.com/aaronc/freactive/#hello-world>* that should be
> almost obvious to those familiar with Clojure (inspiration from reagent
> <https://github.com/reagent-project/reagent>)
> - Allow for *high-performance
> <https://github.com/aaronc/freactive/#performance>* rendering *good
> enough for animated graphics <http://aaronc.github.io/freactive/dom-perf>*
> based on a purely declarative syntax
> - Allow for *reactive binding of any attribute, style property or
> child node*
> - Allow for *coordinated management of state via cursors
> <https://github.com/aaronc/freactive/#cursors>* (inspiration from om
> <https://github.com/swannodette/om>)
> - Provide *deeply-integrated animation
> <https://github.com/aaronc/freactive/#animations>* support
> - Allow for cursors based on paths as well as *lenses*
> - Provide a generic items view component
> <https://github.com/aaronc/freactive/#items-view> for *efficient
> viewing of large data sets*
> - *Minimize unnecessary triggering of update events*
> - Coordinate all updates via *requestAnimationFrame* wherever possible
> - Be easy to debug
> <https://github.com/aaronc/freactive/#debugging-reactive-expressions>
> - Be written in *pure Clojurescript*
> - Provide support for older browsers via polyfills (not yet
> implemented)
>
> Any feedback is welcome!!
>
> I'm not sure I like the name "freactive" - but it was the best I could
> think of at the time. Suggestions for alternative names are welcome.
>
--
Note that posts from new members are moderated - please be patient with your
first post.
---
You received this message because you are subscribed to the Google Groups
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/clojurescript.