Introducing Om
The Om library (https://github.com/omcljs/om) is a great tool for building dynamic user interfaces in ClojureScript. In fact, it's an interface to React.js (http://facebook.github.io/react/), which is a JavaScript library for creating interactive user interface components. Om lets us define a user interface as a hierarchy of components, and each component reactively modifies its appearance based on changes to the component's state. In this way, Om components react to changes in their state.
Note
The following library dependencies are required for the upcoming examples:
[org.omcljs/om "0.8.8"]
Also, the following namespaces must be included in your namespace declaration:
(ns my-namespace (:require [om.core :as om :include-macros true] [om.dom :as dom :include-macros true]))
In addition to the preceding dependencies, the following examples also use the by-id
function from src/m_clj/c9/common.cljs
. Ensure that the code in the following ClojureScript...