From 87fce74d5b7cb5af6f127a04e7b4b23382823ca2 Mon Sep 17 00:00:00 2001 From: zuiidea Date: Fri, 8 Sep 2017 15:45:38 +0800 Subject: [PATCH 1/6] Update app.js fix mobile Header menu --- src/routes/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/routes/app.js b/src/routes/app.js index 9e75aad..3afb3c0 100644 --- a/src/routes/app.js +++ b/src/routes/app.js @@ -36,6 +36,7 @@ const App = ({ children, dispatch, app, loading, location }) => { const headerProps = { menu, user, + location, siderFold, isNavbar, menuPopoverVisible, From dbcc90e7ad9b7155c4e81fa272ab104299330a76 Mon Sep 17 00:00:00 2001 From: zuiidea Date: Fri, 8 Sep 2017 16:41:05 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E5=87=BA=E5=8E=BB=E5=90=83=E7=83=A7?= =?UTF-8?q?=E7=83=A4,=E5=9B=9E=E6=9D=A5=E6=8E=A5=E7=9D=80=E7=9C=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Loader/Loader.js | 5 +- src/components/Loader/Loader.less | 136 +++++++++++++++--------------- src/components/Page/Page.js | 19 +++++ src/components/Page/Page.less | 68 +++++++++++++++ src/components/Page/package.json | 6 ++ src/components/index.js | 2 + src/models/app.js | 2 +- src/router.js | 15 ++-- src/routes/dashboard/index.js | 7 +- 9 files changed, 179 insertions(+), 81 deletions(-) create mode 100644 src/components/Page/Page.js create mode 100644 src/components/Page/Page.less create mode 100644 src/components/Page/package.json diff --git a/src/components/Loader/Loader.js b/src/components/Loader/Loader.js index 2d2943f..e9edb99 100644 --- a/src/components/Loader/Loader.js +++ b/src/components/Loader/Loader.js @@ -6,8 +6,9 @@ import styles from './Loader.less' const Loader = ({ spinning, fullScreen }) => { return (
+ [styles.fullScreen]: fullScreen, + })} + >
LOADING
diff --git a/src/components/Loader/Loader.less b/src/components/Loader/Loader.less index 723402d..fed0403 100644 --- a/src/components/Loader/Loader.less +++ b/src/components/Loader/Loader.less @@ -1,68 +1,68 @@ -.loader_fullScreen { - position: fixed !important; -} - -.loader { - display: block; - background-color: #fff; - width: 100%; - position: absolute; - top: 0; - bottom: 0; - left: 0; - z-index: 100000; - display: flex; - justify-content: center; - align-items: center; - opacity: 1; - text-align: center; - - .warpper { - width: 100px; - height: 100px; - display: inline-flex; - flex-direction: column; - justify-content: space-around; - } - - .inner { - width: 48px; - height: 48px; - margin: 0 auto; - text-indent: -12345px; - border-top: 1px solid rgba(0, 0, 0, 0.08); - border-right: 1px solid rgba(0, 0, 0, 0.08); - border-bottom: 1px solid rgba(0, 0, 0, 0.08); - border-left: 1px solid rgba(0, 0, 0, 0.7); - border-radius: 50%; - z-index: 100001; - - :local { - animation: spinner 600ms infinite linear; - } - } - - .text { - width: 100px; - height: 20px; - text-align: center; - font-size: 12px; - letter-spacing: 4px; - color: #000; - } - - &.hidden { - z-index: -1; - opacity: 0; - transition: opacity 1s ease 0.5s, z-index 0.1s ease 1.5s; - } -} -@keyframes spinner { - 0% { - transform: rotate(0deg); - } - - 100% { - transform: rotate(360deg); - } -} +.loader { + display: block; + background-color: #fff; + width: 100%; + position: absolute; + top: 0; + bottom: 0; + left: 0; + z-index: 100000; + display: flex; + justify-content: center; + align-items: center; + opacity: 1; + text-align: center; + + &.fullScreen { + position: fixed; + } + + .warpper { + width: 100px; + height: 100px; + display: inline-flex; + flex-direction: column; + justify-content: space-around; + } + + .inner { + width: 48px; + height: 48px; + margin: 0 auto; + text-indent: -12345px; + border-top: 1px solid rgba(0, 0, 0, 0.08); + border-right: 1px solid rgba(0, 0, 0, 0.08); + border-bottom: 1px solid rgba(0, 0, 0, 0.08); + border-left: 1px solid rgba(0, 0, 0, 0.7); + border-radius: 50%; + z-index: 100001; + + :local { + animation: spinner 600ms infinite linear; + } + } + + .text { + width: 100px; + height: 20px; + text-align: center; + font-size: 12px; + letter-spacing: 4px; + color: #000; + } + + &.hidden { + z-index: -1; + opacity: 0; + transition: opacity 1s ease 0.5s, z-index 0.1s ease 1.5s; + } +} +@keyframes spinner { + 0% { + transform: rotate(0deg); + } + + 100% { + transform: rotate(360deg); + } +} diff --git a/src/components/Page/Page.js b/src/components/Page/Page.js new file mode 100644 index 0000000..5d37ade --- /dev/null +++ b/src/components/Page/Page.js @@ -0,0 +1,19 @@ +import React, { Component } from 'react' +import classnames from 'classnames' +import Loader from '../Loader' + +export default class Page extends Component { + render () { + const { className, children, loading = false } = this.props + const loadingStyle = { + height: 'calc(100vh - 184px)', + overflow: 'hidden', + } + return ( +
+ {loading ? : ''} + {children} +
+ ) + } +} diff --git a/src/components/Page/Page.less b/src/components/Page/Page.less new file mode 100644 index 0000000..fed0403 --- /dev/null +++ b/src/components/Page/Page.less @@ -0,0 +1,68 @@ +.loader { + display: block; + background-color: #fff; + width: 100%; + position: absolute; + top: 0; + bottom: 0; + left: 0; + z-index: 100000; + display: flex; + justify-content: center; + align-items: center; + opacity: 1; + text-align: center; + + &.fullScreen { + position: fixed; + } + + .warpper { + width: 100px; + height: 100px; + display: inline-flex; + flex-direction: column; + justify-content: space-around; + } + + .inner { + width: 48px; + height: 48px; + margin: 0 auto; + text-indent: -12345px; + border-top: 1px solid rgba(0, 0, 0, 0.08); + border-right: 1px solid rgba(0, 0, 0, 0.08); + border-bottom: 1px solid rgba(0, 0, 0, 0.08); + border-left: 1px solid rgba(0, 0, 0, 0.7); + border-radius: 50%; + z-index: 100001; + + :local { + animation: spinner 600ms infinite linear; + } + } + + .text { + width: 100px; + height: 20px; + text-align: center; + font-size: 12px; + letter-spacing: 4px; + color: #000; + } + + &.hidden { + z-index: -1; + opacity: 0; + transition: opacity 1s ease 0.5s, z-index 0.1s ease 1.5s; + } +} +@keyframes spinner { + 0% { + transform: rotate(0deg); + } + + 100% { + transform: rotate(360deg); + } +} diff --git a/src/components/Page/package.json b/src/components/Page/package.json new file mode 100644 index 0000000..a3811bd --- /dev/null +++ b/src/components/Page/package.json @@ -0,0 +1,6 @@ +{ + "name": "Page", + "version": "0.0.0", + "private": true, + "main": "./Page.js" +} diff --git a/src/components/index.js b/src/components/index.js index 2c8a0d6..a1a372c 100644 --- a/src/components/index.js +++ b/src/components/index.js @@ -7,6 +7,7 @@ import FilterItem from './FilterItem' import Loader from './Loader' import * as Layout from './Layout/index.js' import LinkWrapper from './LinkWrapper' +import Page from './Page' import layer from './layer' @@ -21,4 +22,5 @@ export { Loader, layer, LinkWrapper, + Page, } diff --git a/src/models/app.js b/src/models/app.js index 5e2f7a0..7a205a5 100644 --- a/src/models/app.js +++ b/src/models/app.js @@ -98,7 +98,7 @@ export default { } } else if (config.openPages && config.openPages.indexOf(locationPathname) < 0) { yield put(routerRedux.push({ - pathname: 'login', + pathname: '/login', query: { from: locationPathname, }, diff --git a/src/router.js b/src/router.js index 4aef55a..542018c 100644 --- a/src/router.js +++ b/src/router.js @@ -70,14 +70,17 @@ const Routers = function ({ history, app }) { - ()} /> + ()} /> { routes.map(({ path, ...dynamics }, key) => ( - (), - ...dynamics - })} /> + )) } diff --git a/src/routes/dashboard/index.js b/src/routes/dashboard/index.js index 8466d54..fd9b8ee 100644 --- a/src/routes/dashboard/index.js +++ b/src/routes/dashboard/index.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { connect } from 'dva' import { Row, Col, Card } from 'antd' import { color } from 'utils' -import { Loader } from 'components' +import { Page } from 'components' import { NumberCard, Quote, Sales, Weather, RecentSales, Comments, Completed, Browser, Cpu, User } from './components' import styles from './index.less' @@ -21,8 +21,7 @@ function Dashboard ({ dashboard, loading }) { )) return ( -
- + {numberCards} @@ -97,7 +96,7 @@ function Dashboard ({ dashboard, loading }) { -
+ ) } From d1b373201eeab0c07fc12610e645d90f21262b74 Mon Sep 17 00:00:00 2001 From: zuiidea Date: Sat, 9 Sep 2017 14:20:51 +0800 Subject: [PATCH 3/6] fix some grammar and details --- .eslintrc | 1 + src/components/Layout/Bread.js | 6 +-- src/components/Layout/Menu.js | 8 ++-- src/components/LinkWrapper/index.js | 10 ---- src/components/Page/Page.js | 19 +++++++- src/components/Page/Page.less | 74 ++++------------------------- src/components/index.js | 2 - src/models/user.js | 2 +- src/router.js | 3 +- src/routes/app.js | 14 +++--- src/routes/user/List.js | 6 +-- src/routes/user/index.js | 8 ++-- 12 files changed, 52 insertions(+), 101 deletions(-) delete mode 100644 src/components/LinkWrapper/index.js diff --git a/.eslintrc b/.eslintrc index 3710267..e02cdc0 100644 --- a/.eslintrc +++ b/.eslintrc @@ -32,6 +32,7 @@ "react/forbid-prop-types": 0, "react/no-string-refs": 0, "react/no-find-dom-node": 0, + "react/prefer-stateless-function": 0, "import/no-extraneous-dependencies": 0, "import/prefer-default-export": 0, "react/no-danger": 0, diff --git a/src/components/Layout/Bread.js b/src/components/Layout/Bread.js index be05ef4..0f11801 100644 --- a/src/components/Layout/Bread.js +++ b/src/components/Layout/Bread.js @@ -1,7 +1,7 @@ import React from 'react' import PropTypes from 'prop-types' import { Breadcrumb, Icon } from 'antd' -import { LinkWrapper } from 'components' +import { Link } from 'react-router-dom' import pathToRegexp from 'path-to-regexp' import { queryArray } from 'utils' import styles from './Bread.less' @@ -48,9 +48,9 @@ const Bread = ({ menu, location }) => { return ( {((pathArray.length - 1) !== key) - ? + ? {content} - + : content} ) diff --git a/src/components/Layout/Menu.js b/src/components/Layout/Menu.js index 60e42ff..0e1e176 100644 --- a/src/components/Layout/Menu.js +++ b/src/components/Layout/Menu.js @@ -1,7 +1,7 @@ import React from 'react' import PropTypes from 'prop-types' import { Menu, Icon } from 'antd' -import { LinkWrapper } from 'components' +import { Link } from 'react-router-dom' import { arrayToTree, queryArray } from 'utils' import pathToRegexp from 'path-to-regexp' @@ -31,10 +31,10 @@ const Menus = ({ siderFold, darkTheme, handleClickNavMenu, navOpenKeys, changeOp } return ( - + {item.icon && } {(!siderFoldN || !menuTree.includes(item)) && item.name} - + ) }) @@ -112,7 +112,7 @@ const Menus = ({ siderFold, darkTheme, handleClickNavMenu, navOpenKeys, changeOp mode={siderFold ? 'vertical' : 'inline'} theme={darkTheme ? 'dark' : 'light'} onClick={handleClickNavMenu} - defaultSelectedKeys={defaultSelectedKeys} + selectedKeys={defaultSelectedKeys} > {menuItems} diff --git a/src/components/LinkWrapper/index.js b/src/components/LinkWrapper/index.js deleted file mode 100644 index 320e315..0000000 --- a/src/components/LinkWrapper/index.js +++ /dev/null @@ -1,10 +0,0 @@ -import { Link } from 'react-router-dom' - -export default (props) => { - const Component = props.to ? Link : 'a' - return ( - - {props.children} - - ) -} diff --git a/src/components/Page/Page.js b/src/components/Page/Page.js index 5d37ade..fc2eb45 100644 --- a/src/components/Page/Page.js +++ b/src/components/Page/Page.js @@ -1,19 +1,34 @@ import React, { Component } from 'react' +import PropTypes from 'prop-types' import classnames from 'classnames' import Loader from '../Loader' +import styles from './Page.less' export default class Page extends Component { render () { - const { className, children, loading = false } = this.props + const { className, children, loading = false, inner = false } = this.props const loadingStyle = { height: 'calc(100vh - 184px)', overflow: 'hidden', } return ( -
+
{loading ? : ''} {children}
) } } + + +Page.propTypes = { + className: PropTypes.string, + children: PropTypes.node, + loading: PropTypes.bool, + inner: PropTypes.bool, +} diff --git a/src/components/Page/Page.less b/src/components/Page/Page.less index fed0403..5a1e1b5 100644 --- a/src/components/Page/Page.less +++ b/src/components/Page/Page.less @@ -1,68 +1,14 @@ -.loader { - display: block; - background-color: #fff; - width: 100%; - position: absolute; - top: 0; - bottom: 0; - left: 0; - z-index: 100000; - display: flex; - justify-content: center; - align-items: center; - opacity: 1; - text-align: center; +@import "~themes/vars"; - &.fullScreen { - position: fixed; - } - - .warpper { - width: 100px; - height: 100px; - display: inline-flex; - flex-direction: column; - justify-content: space-around; - } - - .inner { - width: 48px; - height: 48px; - margin: 0 auto; - text-indent: -12345px; - border-top: 1px solid rgba(0, 0, 0, 0.08); - border-right: 1px solid rgba(0, 0, 0, 0.08); - border-bottom: 1px solid rgba(0, 0, 0, 0.08); - border-left: 1px solid rgba(0, 0, 0, 0.7); - border-radius: 50%; - z-index: 100001; - - :local { - animation: spinner 600ms infinite linear; - } - } - - .text { - width: 100px; - height: 20px; - text-align: center; - font-size: 12px; - letter-spacing: 4px; - color: #000; - } - - &.hidden { - z-index: -1; - opacity: 0; - transition: opacity 1s ease 0.5s, z-index 0.1s ease 1.5s; - } +.contentInner{ + background: #fff; + padding: 24px; + box-shadow: @shadow-1; + min-height: e("calc(100vh - 184px)"); } -@keyframes spinner { - 0% { - transform: rotate(0deg); - } - - 100% { - transform: rotate(360deg); +@media (max-width: 767px) { + .contentInner { + padding: 12px; + min-height: e("calc(100vh - 160px)"); } } diff --git a/src/components/index.js b/src/components/index.js index a1a372c..492e40c 100644 --- a/src/components/index.js +++ b/src/components/index.js @@ -6,7 +6,6 @@ import Editor from './Editor' import FilterItem from './FilterItem' import Loader from './Loader' import * as Layout from './Layout/index.js' -import LinkWrapper from './LinkWrapper' import Page from './Page' import layer from './layer' @@ -21,6 +20,5 @@ export { FilterItem, Loader, layer, - LinkWrapper, Page, } diff --git a/src/models/user.js b/src/models/user.js index cfaf1fa..fb61317 100644 --- a/src/models/user.js +++ b/src/models/user.js @@ -3,8 +3,8 @@ import modelExtend from 'dva-model-extend' import { config } from 'utils' import { create, remove, update } from 'services/user' import * as usersService from 'services/users' -import { pageModel } from './common' import queryString from 'query-string' +import { pageModel } from './common' const { query } = usersService const { prefix } = config diff --git a/src/router.js b/src/router.js index 542018c..066d672 100644 --- a/src/router.js +++ b/src/router.js @@ -1,9 +1,8 @@ import React from 'react' import PropTypes from 'prop-types' -import { Router, Switch, Route, Redirect, routerRedux } from 'dva/router' +import { Switch, Route, Redirect, routerRedux } from 'dva/router' import dynamic from 'dva/dynamic' import App from 'routes/app' -import { Loader } from 'components' const { ConnectedRouter } = routerRedux diff --git a/src/routes/app.js b/src/routes/app.js index 5569caa..cc662a7 100644 --- a/src/routes/app.js +++ b/src/routes/app.js @@ -7,10 +7,10 @@ import { connect } from 'dva' import { Layout, Loader } from 'components' import { classnames, config } from 'utils' import { Helmet } from 'react-helmet' +import { withRouter } from 'dva/router' import '../themes/index.less' import './app.less' import Error from './error' -import { withRouter } from 'dva/router' const { prefix, openPages } = config @@ -41,16 +41,16 @@ const App = ({ children, dispatch, app, loading, location }) => { isNavbar, menuPopoverVisible, navOpenKeys, - switchMenuPopover() { + switchMenuPopover () { dispatch({ type: 'app/switchMenuPopver' }) }, - logout() { + logout () { dispatch({ type: 'app/logout' }) }, - switchSider() { + switchSider () { dispatch({ type: 'app/switchSider' }) }, - changeOpenKeys(openKeys) { + changeOpenKeys (openKeys) { dispatch({ type: 'app/handleNavOpenKeys', payload: { navOpenKeys: openKeys } }) }, } @@ -61,10 +61,10 @@ const App = ({ children, dispatch, app, loading, location }) => { siderFold, darkTheme, navOpenKeys, - changeTheme() { + changeTheme () { dispatch({ type: 'app/switchTheme' }) }, - changeOpenKeys(openKeys) { + changeOpenKeys (openKeys) { window.localStorage.setItem(`${prefix}navOpenKeys`, JSON.stringify(openKeys)) dispatch({ type: 'app/handleNavOpenKeys', payload: { navOpenKeys: openKeys } }) }, diff --git a/src/routes/user/List.js b/src/routes/user/List.js index 8f43f5d..abf1c03 100644 --- a/src/routes/user/List.js +++ b/src/routes/user/List.js @@ -3,9 +3,9 @@ import PropTypes from 'prop-types' import { Table, Modal } from 'antd' import classnames from 'classnames' import { DropOption } from 'components' -import { LinkWrapper } from 'components' -import AnimTableBody from '../../components/DataTable/AnimTableBody' +import { Link } from 'react-router-dom' import queryString from 'query-string' +import AnimTableBody from 'components/DataTable/AnimTableBody' import styles from './List.less' const confirm = Modal.confirm @@ -38,7 +38,7 @@ const List = ({ onDeleteItem, onEditItem, isMotion, location, ...tableProps }) = title: 'Name', dataIndex: 'name', key: 'name', - render: (text, record) => {text}, + render: (text, record) => {text}, }, { title: 'NickName', dataIndex: 'nickName', diff --git a/src/routes/user/index.js b/src/routes/user/index.js index 258899d..696d180 100644 --- a/src/routes/user/index.js +++ b/src/routes/user/index.js @@ -3,10 +3,12 @@ import PropTypes from 'prop-types' import { routerRedux } from 'dva/router' import { connect } from 'dva' import { Row, Col, Button, Popconfirm } from 'antd' +import { Page } from 'components' +import queryString from 'query-string' import List from './List' import Filter from './Filter' import Modal from './Modal' -import queryString from 'query-string' + const User = ({ location, dispatch, user, loading }) => { location.query = queryString.parse(location.search) @@ -127,7 +129,7 @@ const User = ({ location, dispatch, user, loading }) => { } return ( -
+ { selectedRowKeys.length > 0 && @@ -142,7 +144,7 @@ const User = ({ location, dispatch, user, loading }) => { } {modalVisible && } -
+ ) } From dedd34e8e8f41fe0c5057fdf9fa4e4f864453613 Mon Sep 17 00:00:00 2001 From: zuiidea Date: Sat, 9 Sep 2017 14:50:47 +0800 Subject: [PATCH 4/6] 4.3.5 --- README.md | 35 ++++++++--------------------------- package.json | 8 +++----- 2 files changed, 11 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index ccda839..189e9a9 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![React](https://img.shields.io/badge/react-^15.6.1-brightgreen.svg?style=flat-square)](https://github.com/facebook/react) [![Ant Design](https://img.shields.io/badge/ant--design-^2.11.2-yellowgreen.svg?style=flat-square)](https://github.com/ant-design/ant-design) -[![dva](https://img.shields.io/badge/dva-^1.2.0-orange.svg?style=flat-square)](https://github.com/dvajs/dva) +[![dva](https://img.shields.io/badge/dva-^2.0.1-orange.svg?style=flat-square)](https://github.com/dvajs/dva) [![GitHub issues](https://img.shields.io/github/issues/zuiidea/antd-admin.svg?style=flat-square)](https://github.com/zuiidea/antd-admin) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/zuiidea/antd-admin/pulls) @@ -21,6 +21,13 @@ ## 更新日志 + +### 4.3.5 + +`2017-09-04` + +-   更新[dva](https://github.com/dvajs/dva)至`2.0.1`,感谢[@yangbin1994](https://github.com/yangbin1994)的[PR](https://github.com/zuiidea/antd-admin/pull/567)。 + ### 4.3.4 `2017-09-04` @@ -38,32 +45,6 @@ -   新增打包时按项目版本号生成文件目录。[#449](https://github.com/zuiidea/antd-admin/issues/449) -   更新`eslint`,并适当修改了`.eslintrc`。 -### 4.2.3 - -`2017-07-07` - --   新增用户按权限访问。[#384](https://github.com/zuiidea/antd-admin/issues/384) - -### 4.2.2 - -`2017-06-01` - --   新增用户管理批量删除。[#320](https://github.com/zuiidea/antd-admin/issues/320) - -### 4.2.1 - -`2017-05-12` - --   新增IconFont扩展方案,本地使用方案。[#270](https://github.com/zuiidea/antd-admin/issues/270) [Live](http://47.92.30.98:666/UIElement/iconfont) --   新增常见场景使用loading。 [dva-loading](https://github.com/dvajs/dva-loading) - -### 4.2 - -`2017-04-28` - -- 修改user相关API使用`Restful`风格。 -- 增加user页面多条件查询。[#266](https://github.com/zuiidea/antd-admin/issues/226) -- 修复菜单默认高亮。[#201](https://github.com/zuiidea/antd-admin/issues/201) [More Change Log](https://github.com/zuiidea/antd-admin/wiki/Change-Log) diff --git a/package.json b/package.json index 653f5c6..3c41117 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "antd-admin", - "version": "4.3.4", + "version": "4.3.5", "dependencies": { "antd": "^2.11.2", "axios": "^0.16.2", @@ -53,9 +53,7 @@ "redbox-react": "^1.2.10", "roadhog": "^1.2.2" }, - "pre-commit": [ - "lint" - ], + "pre-commit": ["lint"], "scripts": { "dev": "cross-env BROWSER=none HOST=0.0.0.0 roadhog server", "lint": "eslint --fix --ext .js src", @@ -63,4 +61,4 @@ "build:dll": "roadhog buildDll", "build:new": "node version && roadhog build" } -} +} \ No newline at end of file From fa4385055b45a3c41de7afa2fea947b52d350846 Mon Sep 17 00:00:00 2001 From: zuiidea Date: Sat, 9 Sep 2017 14:54:18 +0800 Subject: [PATCH 5/6] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 189e9a9..2edfb7a 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ -   更新`eslint`,并适当修改了`.eslintrc`。 - [More Change Log](https://github.com/zuiidea/antd-admin/wiki/Change-Log) +[More Change Log](https://github.com/zuiidea/antd-admin/wiki/Change-Log) ## 开发构建 From 601a03b5b484bfc4e904e6087be33532cd85737e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=96=8C?= <892728595@qq.com> Date: Sun, 10 Sep 2017 02:26:27 +0800 Subject: [PATCH 6/6] fix bug#575 --- src/models/app.js | 4 ++-- src/routes/post/index.js | 9 +++++---- src/routes/user/index.js | 12 ++++++------ 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/models/app.js b/src/models/app.js index 7a205a5..711b13f 100644 --- a/src/models/app.js +++ b/src/models/app.js @@ -99,9 +99,9 @@ export default { } else if (config.openPages && config.openPages.indexOf(locationPathname) < 0) { yield put(routerRedux.push({ pathname: '/login', - query: { + search: queryString.stringify({ from: locationPathname, - }, + }), })) } }, diff --git a/src/routes/post/index.js b/src/routes/post/index.js index 40be20d..b30af7e 100644 --- a/src/routes/post/index.js +++ b/src/routes/post/index.js @@ -4,6 +4,7 @@ import { connect } from 'dva' import { Tabs } from 'antd' import { routerRedux } from 'dva/router' import List from './List' +import queryString from 'query-string' const TabPane = Tabs.TabPane @@ -24,11 +25,11 @@ const Index = ({ post, dispatch, loading, location }) => { onChange (page) { dispatch(routerRedux.push({ pathname, - query: { + search: queryString.stringify({ ...query, page: page.current, pageSize: page.pageSize, - }, + }), })) }, } @@ -36,9 +37,9 @@ const Index = ({ post, dispatch, loading, location }) => { const handleTabClick = (key) => { dispatch(routerRedux.push({ pathname, - query: { + search: queryString.stringify({ status: key, - }, + }), })) } diff --git a/src/routes/user/index.js b/src/routes/user/index.js index 696d180..7758d7b 100644 --- a/src/routes/user/index.js +++ b/src/routes/user/index.js @@ -45,11 +45,11 @@ const User = ({ location, dispatch, user, loading }) => { const { query, pathname } = location dispatch(routerRedux.push({ pathname, - query: { + search: queryString.stringify({ ...query, page: page.current, pageSize: page.pageSize, - }, + }), })) }, onDeleteItem (id) { @@ -88,20 +88,20 @@ const User = ({ location, dispatch, user, loading }) => { onFilterChange (value) { dispatch(routerRedux.push({ pathname: location.pathname, - query: { + search: queryString.stringify({ ...value, page: 1, pageSize, - }, + }), })) }, onSearch (fieldsValue) { fieldsValue.keyword.length ? dispatch(routerRedux.push({ pathname: '/user', - query: { + search: queryString.stringify({ field: fieldsValue.field, keyword: fieldsValue.keyword, - }, + }), })) : dispatch(routerRedux.push({ pathname: '/user', }))