Browse Source

代码回退

zhuth 7 years ago
parent
commit
0ad49fce15
2 changed files with 9 additions and 8 deletions
  1. 1 8
      src/components/common/navigator.jsx
  2. 8 0
      src/models/main.js

+ 1 - 8
src/components/common/navigator.jsx

@@ -8,15 +8,13 @@ class Navigator extends React.Component {
     constructor(props) {
     constructor(props) {
         super(props)
         super(props)
         this.state = {
         this.state = {
-            currentPage: 'home'
         }
         }
     };
     };
     
     
 
 
     render() {
     render() {
         const { main, dispatch } = this.props;
         const { main, dispatch } = this.props;
-        const { currentUser } = main;
-        const { currentPage } = this.state;
+        const { currentUser, currentPage } = main;
 
 
         const userMenu = currentUser.code ? (
         const userMenu = currentUser.code ? (
             <Menu>
             <Menu>
@@ -51,11 +49,6 @@ class Navigator extends React.Component {
                 <Menu
                 <Menu
                     className='navigator-menu'
                     className='navigator-menu'
                     selectedKeys={[currentPage]}
                     selectedKeys={[currentPage]}
-                    onClick={(item ) => {
-                        this.setState({
-                            currentPage: item.key
-                        });
-                    }}
                     mode="horizontal"
                     mode="horizontal"
                 >     
                 >     
                     <Menu.Item className='nav-page' key="home">
                     <Menu.Item className='nav-page' key="home">

+ 8 - 0
src/models/main.js

@@ -22,8 +22,12 @@ export default {
             name,
             name,
             role,
             role,
         },
         },
+        currentPage: ''
     },
     },
     reducers: {
     reducers: {
+        setCurrentPage(state, action) {
+            return { ...state, currentPage: action.page || 'home' };
+        },
         setCurrentUser(state, action) {
         setCurrentUser(state, action) {
             const { user } = action;
             const { user } = action;
             return { ...state, currentUser: {
             return { ...state, currentUser: {
@@ -87,6 +91,10 @@ export default {
                 duration: 2,
                 duration: 2,
                 maxCount: 3,
                 maxCount: 3,
             });
             });
+            return history.listen(({ pathname, query }) => {
+                let page = pathname.match(/\/(\w*)/)[1];
+                dispatch({ type: 'setCurrentPage', page });
+            })
         }
         }
     }
     }
 };
 };