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.
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to