Liking cljdoc? Tell your friends :D

com.fulcrologic.fulcro.rendering.ident-optimized-render

A render optimization algorithm for refreshing the UI via props tunnelling (setting new props on a component's state in a pre-agreed location). This algorithm analyzes database changes and on-screen components to update components (by ident) whose props have changed.

Prop change detection is done by scanning the database in only the locations that on-screen components are querying (derived by the mounted component idents, and any ident-joins in the queries).

A render optimization algorithm for refreshing the UI via props tunnelling (setting new props on a component's
state in a pre-agreed location). This algorithm analyzes database changes and on-screen components to update
components (by ident) whose props have changed.

Prop change detection is done by scanning the database in *only* the locations that on-screen components are querying
(derived by the mounted component idents, and any ident-joins in the queries).
raw docstring

dirty-table-entriesclj/s

(dirty-table-entries old-state new-state idents)

Checks the given idents and returns a subset of them where the data they refer to has changed between old-state and new-state.

Checks the given `idents` and returns a subset of them where the data they refer to has changed
between `old-state` and `new-state`.
sourceraw docstring

props->componentsclj/s

(props->components app property-set)

Given an app and a property-set: returns the components that query for the items in property-set.

The property-set can be any sequence (ideally a set) of keywords and idents that can directly appear in a component query as a property or join key.

Given an app and a `property-set`: returns the components that query for the items in property-set.

The `property-set` can be any sequence (ideally a set) of keywords and idents that can directly appear
in a component query as a property or join key.
sourceraw docstring

render!clj/s

(render! app)
(render! app {:keys [force-root? root-props-changed?] :as options})

DEPRECATED: Careful use of hooks/use-component will give a much more optimized experience, and async rendering in React 18 may break with this renderer. Use at your own risk with React 18+.

The top-level call for using this optimized render in your application.

If :force-root? true is passed in options, then it just forces a keyframe root render; otherwise it tries to minimize the work done for screen refresh to just the queries/refreshes needed by the data that has changed.

DEPRECATED: Careful use of hooks/use-component will give a much more optimized experience, and async rendering in
 React 18 may break with this renderer. Use at your own risk with React 18+.

The top-level call for using this optimized render in your application.

If `:force-root? true` is passed in options, then it just forces a keyframe root render; otherwise
it tries to minimize the work done for screen refresh to just the queries/refreshes needed by the
data that has changed.
sourceraw docstring

render-component!clj/s

(render-component! app ident c)

Uses the component's query and the current application state to query for the current value of that component's props (subtree). It then sends those props to the component via "props tunnelling" (setting them on a well-known key in component-local state).

Uses the component's query and the current application state to query for the current value of that component's
props (subtree). It then sends those props to the component via "props tunnelling" (setting them on a well-known key in
component-local state).
sourceraw docstring

render-components-with-ident!clj/s

(render-components-with-ident! app ident)

Renders only components that have the given ident.

Renders *only* components that *have* the given ident.
sourceraw docstring

render-dependents-of-ident!clj/s

(render-dependents-of-ident! app ident)

Renders components that have, or query for, the given ident.

Renders components that have, or query for, the given ident.
sourceraw docstring

render-stale-components!clj/s

(render-stale-components! app)

This function tracks the state of the app at the time of prior render in the app's runtime-atom. It uses that to do a comparison of old vs. current application state (bounded by the needs of on-screen components). When it finds data that has changed it renders all of the components that depend on that data.

This function tracks the state of the app at the time of prior render in the app's runtime-atom. It
uses that to do a comparison of old vs. current application state (bounded by the needs of on-screen components).
When it finds data that has changed it renders all of the components that depend on that data.
sourceraw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close