npm install --save react-eflow
import {Store} from 'react-eflow'
class SomeStore extends Store{
constructor(options){
super(options);
}
@stateKey('someThing')//对doSomeThing默认存储key值doSomeThing转换成someThing
@dispatch
doSomeThing(dispatch) {
//获取该方法的dispatch
//发布相关数据,发布后在该对象内部state的doSomeThing属性包含发布值
setTimeout(()=>{
dispatch({request: true});
}, 1000);
}
//实例化
export default new SomeStore();
import {wrapComponent} from 'react-eflow'
import someStore from '../store/SomeStore'
@wrapComponent([someStore.doSomeThing])
class SomeComponent extends Component {
constructor(props){
super(props);
//调用someStore.doSomeThing
someStore.doSomeThing();
//调用完成后,someStore内部state值: {someThing:{request: true}}
}
render(){
{/*在this.props.someThing中则会有{request: true} 对象*/}
let request = this.props.someThing.request;
return (
<div>
request: {request ? 'true' : 'false'}
</div>
);
}
}