знаю правильно ли это новыглядит он вот так:
export class Provider extends Component {
constructor({ store }) {
super({ store })
this.store = Object.entries(store)
.reduce((result, [key, value]) => {
if (key === "getState") return result;
if (typeof value === "function") {
result[key] = function () {
return value(...arguments);
}
} else {
result[key] = value;
}
return result;
}, {})
this.getState = store.getState;
this.state = this.getState(this.store)
}
getChildContext = () => {
let { store, state } = this;
let setState = action => {
Object.assign(
store,
typeof action === "function"
? action(state)
: action
)
this.setState(this.getState({...store}))
}
return { store, state, setState }
};
render() {
return <div class="app">{this.props.children}</div>
}
}
работает?
Обсуждают сегодня