Sha256: 74897aca3f3f40b4552e1b05ca3d60ffc0d3279c8472f963ceccceccfd5a73f7
Contents?: true
Size: 1.83 KB
Versions: 12
Compression:
Stored size: 1.83 KB
Contents
Rev.appComponent('Revelry.Index', class Index extends React.Component { constructor(props) { super(props) this.state = { examples: 'Rev', } } getScope() { switch(this.state.examples) { case 'Rev': return global.Rev case 'App': return global.Rev.App default: throw new Error('`this.state.examples` must be "Rev" or "App"') } } onChangeView(e) { const state = {} state[e.target.name] = e.target.value this.setState(state) } renderExample(componentClass, name) { const {Row} = Rev.Components const props = { id: name, } let instance = null if(React.createElement) { instance = React.createElement(componentClass, props) } else { instance = <componentClass {...props} /> } return ( <Row key={name}> <hr /> <h2>{name}</h2> {instance} </Row> ) } render() { const {Row, Col} = Rev.Components return ( <div> <Row> <h1>Revelry Guide</h1> <Col large="2" medium="3" small="6"> <label> <input type="radio" name="examples" value="Rev" checked={this.state.examples === 'Rev'} onChange={this.onChangeView.bind(this)} /> Revelry </label> </Col> <Col large="2" medium="3" small="6" end> <label> <input type="radio" name="examples" value="App" checked={this.state.examples === 'App'} onChange={this.onChangeView.bind(this)} /> Application </label> </Col> </Row> {_.map(this.getScope().Examples, this.renderExample.bind(this))} </div> ) } })
Version data entries
12 entries across 12 versions & 1 rubygems