index.js 1.54 KB
import React,{Component} from 'react';
import PropTypes from 'prop-types';
import{connect} from "react-redux";
import EVENT from "../../store/EVENT"
import $http from "../../service";
@connect((state)=>{
   // debugger
    let {layout,login} = state
    return {layout,login};
})
 class Demo extends Component{
     
    componentDidMount(){
      //  debugger
      console.log($http)
        $http.GET("/api")
             .then(d=>{
                 debugger
             })
    }
    /**
     * @name 同步修改
     */
    EventClick(item){
        
        this.props.dispatch({
            type:EVENT.LAYOUT,
            payload:{ 
                path:"/",title:"更改"
            }
        })
    }
    /**
     * @name 异步修改
     */
    EventDyncClick(){
      
        this.props.dispatch({
            type:EVENT.LOGIN,
            payload:{ 
                name:"hehehe"
            }
        })
    }
    render(){
        let { layout,login} = this.props;
        console.log(layout,login)
        return  <article>
            <p>同步修改</p>
           {
             layout.menuList.map((d,ind)=>{
                 return <span key={ind} onClick={this.EventClick.bind(this,d)}>{JSON.stringify(d)}</span>
             })
           }
           <p>异步修改</p>
           {
            <span onClick={this.EventDyncClick.bind(this)}>{login.name}</span>
           }
        </article>
    }
}
// Demo.PropTypes={
//     layout:PropTypes.object
// }
// Demo.defaultProps={
//     layout:{
//         menuList:[]
//     }
// }
export default Demo;