joyent-portal/spikes/leak/src/client/index.js

45 lines
677 B
JavaScript
Raw Normal View History

2016-11-23 18:27:02 +02:00
const ReactDOM = require('react-dom');
const React = require('react');
const Store = require('./store');
const nes = require('nes/dist/client');
const {
Client
} = nes;
const client = new Client(`ws://${document.location.host}`);
const store = Store({
windowSize: 20,
ws: client
});
2016-11-23 18:27:02 +02:00
client.connect((err) => {
if (err) {
throw err;
}
store.getState().wsReady = true;
render();
2016-11-23 18:27:02 +02:00
});
const render = () => {
const Root = require('./root');
if (!store.getState().wsReady) {
return;
}
2016-11-23 18:27:02 +02:00
ReactDOM.render(
<Root store={store} />,
document.getElementById('root')
);
};
render();
if (module.hot) {
module.hot.accept('./root', render);
}