Skip to content

Instantly share code, notes, and snippets.

<!doctype html>
<html lang=en>
<head>
<meta charset=utf-8>
<title>Hello React!</title>
</head>
<body>
<div id="root"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.js"></script>
@nstadigs
nstadigs / memoizeFuncs.js
Last active June 20, 2018 15:28
recompose memoize function
import mapValues from 'lodash/object/mapValues';
import every from 'lodash/collection/every';
const sortUsersByKey (users, key) => {
//...
};
const upperCaseNames (users) => {
// ...
};
@nstadigs
nstadigs / ramda_cond_jsx.jsx
Created September 26, 2015 07:37
Ramda conditions with jsx
import {cond, eq, between, T} from 'ramda';
<div>
{cond([
[eq(0), () => <span>sleepy</span>],
[between(0, 20), () => <span>calm</span>],
[between(20, 40), () => <span>angry</span>],
[between(40, 41), () => <span>raging</span>],
[T, () => <span>unknown anger level</span>]
], angerLevel)};
@nstadigs
nstadigs / index.js
Created April 22, 2015 07:10
requirebin sketch
// require() some stuff from npm (like you were using browserify)
// and then hit Run Code to run it on the right
var flyd = require('flyd');
var scanMerge = require('flyd-scanmerge');
var stream = flyd.stream(0);
var createTodo = flyd.stream();
var deleteTodo = flyd.stream();
async.it('waits to request to finish', function (done) {
doRequest().then(function (data) {
expect(data).toEqual('hello world');
done();
})
});
@nstadigs
nstadigs / moduleLoader.js
Last active December 14, 2015 07:39
Load javascript functionallity for dom nodes with require.js
define(['jquery'], function ($) {
var fetchAndInitModule = function () {
var node = $(this),
module = node.data('module');
require([module], function (module) {
module.init(node);
});
};
@nstadigs
nstadigs / asyncLs
Last active October 8, 2015 08:28
localStorage ORM
(function(exports) {
var mod = function (databaseName, saveInterval) {
var self;
saveInterval = saveInterval || 2000;
databaseName = databaseName || 'unnamed';
this.hasChanged = false;
this.store = {};