window.addEventListener('resize', __.throttle(this.rafResize, 300, this.eventOptions));
this.state.layout === layout
'md' === 'md'
var webpack = require("webpack");
...
plugins: [
new webpack.ProvidePlugin({
signalR: "signalr-client"
})
]
import { HubConnection } from 'signalr-client/dist/browser/signalr-client.js';
import { HubConnection } from 'signalr-client';
import signalR from 'signalr-client';
fakeEvent = {
target: {
name: 'optionName',
value: 'optionValue',
},
};
this.state.title.map(function(item, i) { ... });
npm install @aspnet/signalr-client -S
import signalR from '@aspnet/signalr-client';
let connection = new signalR.HubConnection('/chat');
class Foo {
constructor() {
this.queue = [];
}
pFunc(i,pGen) {
return pGen();
}
bar() {
const _bar = () => {
return new Promise( (resolve,reject) => {
setTimeout( () => {
console.log('bar');
resolve();
}, 1000);
})
}
this.queue.push(_bar);
return this;
}
baz() {
const _baz = () => {
return new Promise( (resolve,reject) => {
setTimeout( () => {
console.log('baz');
resolve();
}, 1000);
})
}
this.queue.push(_baz);
return this;
}
then(func) {
return Promise.reduce(this.queue, this.pFunc, 0).then(func);
}
}
const foo = new Foo();
foo.bar().baz().then(() => console.log('done'));
Да и время обновления при желании.