Skip to content

Instantly share code, notes, and snippets.

// A starting point for js plugins.
(function (window, $) {
var plugin = function (options, initOnAssign) {
var api = {}, op;
// Establish plugin defaults.
var defaults = {
@tomjamesallen
tomjamesallen / js-plugin-boilerplate
Last active August 29, 2015 14:07
Js Plugin boilerplate
;(function (window, $) {
var plugin = function (options, initOnAssign) {
var api = {}, op;
// Establish plugin defaults.
var defaults = {
// documentReady, windowLoad, immediate
initOn: 'windowLoad',
};
@tomjamesallen
tomjamesallen / addPropsRecursively.js
Created April 4, 2016 10:11
Add multiple props to a react element and all child elements.
import React from 'react'
export default function addPropsRecursively(el, props) {
let cloneChildren = []
React.Children.forEach(el.props.children, (child) => {
let replacement = addPropsRecursively(child, props)
cloneChildren.push(replacement)
})
// Store
state = {
artists: [],
filteredArtists: [],
currentRange: null,
currentProduct: null
}
// Helper.
<!DOCTYPE html>
<html>
<head>
<script src="https://fb.me/react-0.14.3.min.js"></script>
<script src="https://fb.me/react-dom-0.14.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/redux/3.0.4/redux.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-redux/4.0.0/react-redux.js"></script>
<script src="https://npmcdn.com/expect/umd/expect.min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
<!DOCTYPE html>
<html>
<head>
<script src="https://fb.me/react-0.14.3.min.js"></script>
<script src="https://fb.me/react-dom-0.14.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/redux/3.0.4/redux.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-redux/4.0.0/react-redux.js"></script>
<script src="https://npmcdn.com/expect/umd/expect.min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
<!DOCTYPE html>
<html>
<head>
<script src="https://fb.me/react-0.14.3.min.js"></script>
<script src="https://fb.me/react-dom-0.14.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/redux/3.0.4/redux.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-redux/4.0.0/react-redux.js"></script>
<script src="https://npmcdn.com/expect/umd/expect.min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
<!DOCTYPE html>
<html>
<head>
<script src="https://fb.me/react-0.14.3.min.js"></script>
<script src="https://fb.me/react-dom-0.14.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/redux/3.0.4/redux.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-redux/4.0.0/react-redux.js"></script>
<script src="https://npmcdn.com/expect/umd/expect.min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
<!DOCTYPE html>
<html>
<head>
<script src="https://fb.me/react-0.14.3.min.js"></script>
<script src="https://fb.me/react-dom-0.14.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/redux/3.0.4/redux.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-redux/4.0.0/react-redux.js"></script>
<script src="https://npmcdn.com/expect/umd/expect.min.js"></script>
<script src="https://wzrd.in/standalone/deep-freeze@latest"></script>
<meta charset="utf-8">