Skip to content

Instantly share code, notes, and snippets.

View swannodette's full-sized avatar

David Nolen swannodette

View GitHub Profile
(ns test.core
(:require-macros [cljs.core.async.macros :refer [go]])
(:require [cljs.core.async :refer [<! chan put!]]
[om.core :as om :include-macros true]
[om.dom :as dom :include-macros true]))
(enable-console-print!)
(def aidc (chan))
(extend-type number
ICloneable
(-clone [n] (js/Number. n)))
(meta
(specify 1
IMeta
(-meta [_] {:woot true})))
;; => {:woot true}
(ns example)
(defrecord HTTPRequest [type url proxy])
(HTTPRequest/getBasis)
;; =>
;; [type url proxy]
(defrecord HTTPProxy [host port])
<html>
<head>
</head>
<body>
<div id="test"></div>
<script src="http://fb.me/react-0.5.1.js"></script>
<script src="test.js"></script>
</body>
</html>
; using 2120
(defprotocol P (m [x]))
(extend-protocol P
number
(m [x] (- x)))
(set! (.-foo js/Number.prototype)
#(this-as this (m this)))
var Counter = React.createClass({
getInitialState: function() {
window.aCounter = this;
return {
count: 0
};
},
add: function() {
this.setState({count: this.state.count+1});
(ns react-cljs.core
(:require-macros [cljs.core.async.macros :refer [go]])
(:require [om.core :as om]
[om.dom :as dom :include-macros true]
[cljs.core.async :refer [>! <! chan put! sliding-buffer]]))
(enable-console-print!)
(def app-state
(atom {:counters (into [] (map (fn [n] {:id n :count 0}) (range 10)))}))
(ns react-cljs.core
(:require-macros [reactjs.macros :refer [pure]])
(:require React [reactjs.core :as r]))
(enable-console-print!)
(declare render-ui)
(defn render-counter [id state cb]
(pure state
@swannodette
swannodette / pure.js
Last active December 30, 2015 09:39
var PureComponent = React.createClass({
shouldComponentUpdate: function(nextProps, nextState) {
return !equals(this.props.value, nextProps.value);
},
render: function() {
return this.props.children();
}
});
var pure = function(value, childrenThunk) {
(ns react-cljs.core
(:require React))
(enable-console-print!)
(declare render-ui)
(defn render-counter [id state root]
(let [cnt (or (get-in state [id :count]) 0)]
(React/DOM.div nil