Skip to content

Instantly share code, notes, and snippets.

View eddyw's full-sized avatar
🏠
Working from home

Eddy Wilson eddyw

🏠
Working from home
View GitHub Profile
@eddyw
eddyw / map-component.js
Last active November 11, 2017 17:02
Map Component
const completedStyle = { color: 'green' }
const uncompletedStyle = { color: 'red' }
const Item = ({ title, completed }) => (
<li>
<span>{completed ? 'o' : 'x'} </span>
<span style={completed ? completedStyle : uncompletedStyle}>{title}</span>
</li>
)
@eddyw
eddyw / map-component.js
Created November 11, 2017 16:31
Map Component
const completedStyle = { color: 'green' }
const uncompletedStyle = { color: 'red' }
const TodoList = () => (
<ul>
{todoList.map(({ title, completed }, key) => (
<li key={key}>
<span>{completed ? 'o' : 'x'} </span>
<span style={completed ? completedStyle : uncompletedStyle}>{title}</span>
</li>
))}
@eddyw
eddyw / map-component.js
Created November 11, 2017 16:23
Map Component
const TodoList = () => (
<ul>
{todoList.map((item, key) => (
<li key={key}>{item.title} : {String(item.completed)}</li>
))}
</ul>
)
@eddyw
eddyw / map-component.js
Created November 11, 2017 16:19
Map Component
const todoList = [
{ title: 'Do laundry', completed: true },
{ title: 'Pet kitty', completed: false },
{ title: 'Secret Project', completed: false },
]
@eddyw
eddyw / bas-refs.jsx
Created November 1, 2017 17:11
Suck Less at React: Understanding refs
const SomeComponent = () => (
<span>Example</span>
)
// and later somewhere in your code
<SomeComponent ref={handleRefs} />
const Form = ({ frmref, onSubmit }) => (
<form ref={frmref} onSubmit={onSubmit}>
<input name="example" type="text" />
</form>
)
@eddyw
eddyw / instance-refs.jsx
Created November 1, 2017 16:47
Suck Less at React: Understanding refs
import React from 'react'
import propTypes from 'prop-types'
import { render } from 'react-dom'
class Form extends React.Component {
static propTypes = {
onSubmit: propTypes.func.isRequired,
}
constructor(...rest) {
super(...rest)
@eddyw
eddyw / form-component-example.jsx
Last active November 1, 2017 16:44
Suck Less at React: Understanding refs
import React from 'react'
import propTypes from 'prop-types'
import { render } from 'react-dom'
class Form extends React.Component {
static propTypes = {
onSubmit: propTypes.func.isRequired,
}
render() {
return (
@eddyw
eddyw / refs-instance-of.jsx
Last active November 1, 2017 16:58
Suck Less at React: Understanding refs
import React from 'react'
import propTypes from 'prop-types'
import { render } from 'react-dom'
class Span extends React.Component {
static propTypes = {
children: propTypes.node.isRequired,
}
render() {
return <span>{this.props.children}</span>
@eddyw
eddyw / complex-conditions.jsx
Created November 1, 2017 14:49
Suck less at React (utilities #1): Switch Components
<section>
<SwitchIf test={this.props.section}>
<SwitchIf equals={1} test={this.props.isUserLogged}>
<SwitchWhen equals={true} render={<SectionUserLogged />} />
<SwitchWhen equals={false} render={<SectionUserNotLogged />} />
</SwitchIf>
<SwitchIf equals={2} test={this.props.isUserAdmin}>
<SwitchWhen equals={true} render={<SectionDashboard />} />
</SwitchIf>
<SwitchWhen equals={3} render={<SectionAbout />} />