It should re-render the portion of your DOM that was in an rx that got
invalidated. What does the implementation of sess/get look like?

On Thu, Nov 20, 2014 at 5:21 PM, Sven Richter <[email protected]>
wrote:

> 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 a topic in the
> Google Groups "ClojureScript" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/clojurescript/99myJ9vLeKQ/unsubscribe.
> To unsubscribe from this group and all its topics, 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.
>

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

Reply via email to