diff --git a/config/config.ts b/config/config.ts index 73e70a61..a4fda595 100644 --- a/config/config.ts +++ b/config/config.ts @@ -22,5 +22,14 @@ export default { hash: true, theme: themeConfig, ignoreMomentLocale: true, - disableCSSModules: true + disableCSSModules: true, + // 代理配置 - 请根据需要开启 + // 访问 `/api/users` 代理到 `http://api.jiumao.com/users`] + // proxy: { + // '/api': { + // target: 'http://api.jiumao.com/', + // changeOrigin: true, + // pathRewrite: { '^/api' : '' } + // } + // } }; diff --git a/package.json b/package.json index 5636e74d..ccc00432 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "@jiumao/dharma": "^0.0.5", "@jiumao/policy": "^1.0.5", "antd": "^3.19.2", - "axios": "^0.18.0", + "axios": "^0.19.0", "bizcharts": "^3.5.2", "braft-editor": "^2.2.9", "classnames": "^2.2.6", diff --git a/src/layouts/basic-layout.tsx b/src/layouts/basic-layout.tsx index 7883b23e..68bac2c3 100644 --- a/src/layouts/basic-layout.tsx +++ b/src/layouts/basic-layout.tsx @@ -2,7 +2,6 @@ import React, { useState } from 'react'; import { Layout } from 'antd'; import { connect } from 'dva'; import classNames from 'classnames'; -import Policy from '@jiumao/policy'; import useMedia from 'react-media-hook2'; import { ContainerQuery } from 'react-container-query'; import DocumentTitle from 'react-document-title'; @@ -17,7 +16,6 @@ import './basic-layout.less'; interface IProps extends Required, ISidebarMenuProps { prefixCls?: string; - policy: Policy; tabActiveKey?: string; breadcrumbNameMap?: { [path: string]: IMenu }; setting?: ISettingModelState; @@ -54,7 +52,6 @@ const BasicLayout: React.FC = (props) => { dispatch, location, route, - policy, menuData, breadcrumbNameMap, setting, @@ -70,8 +67,7 @@ const BasicLayout: React.FC = (props) => { dispatch!({ type: 'menu/getMenuData', payload: { - routes, - policy + routes }, }); }); @@ -126,8 +122,7 @@ BasicLayout.defaultProps = { prefixCls: 'lotus-basic-layout' }; -export default connect(({ menu, setting, user }: ConnectState) => ({ - policy: user.policy, +export default connect(({ menu, setting }: ConnectState) => ({ menuData: menu.menuData, breadcrumbNameMap: menu.breadcrumbNameMap, setting diff --git a/src/models/menu.ts b/src/models/menu.ts index c4e04add..7eac5bfc 100644 --- a/src/models/menu.ts +++ b/src/models/menu.ts @@ -1,4 +1,5 @@ import { Reducer } from 'redux'; +import { delay } from 'dva/saga'; import memoizeOne from 'memoize-one'; import isEqual from 'lodash/isEqual'; import Policy from '@jiumao/policy'; @@ -112,9 +113,16 @@ const MenuModel: IMenuModel = { breadcrumbNameMap: {} }, effects: { - *getMenuData({ payload, callback }, { put }) { + *getMenuData({ payload, callback }, { put, call, select }) { + // 解决先于生成policy执行问题 + yield call(delay, 400); + + const user = yield select( + (state) => state.user + ); + const { routes } = payload; - policy = payload.policy; + policy = user.policy; const originalMenuData = memoizeOneFormatter(routes); const menuData = filterMenuData(originalMenuData); const breadcrumbNameMap = memoizeOneGetBreadcrumbNameMap(originalMenuData); diff --git a/src/pages/user/components/password-login-form.tsx b/src/pages/user/components/password-login-form.tsx index 611897c2..c3d275b2 100644 --- a/src/pages/user/components/password-login-form.tsx +++ b/src/pages/user/components/password-login-form.tsx @@ -109,4 +109,4 @@ PasswordLoginForm.defaultProps = { loading: false }; -export default Form.create()(PasswordLoginForm); +export default Form.create()(PasswordLoginForm); diff --git a/src/pages/user/components/sms-login-form.tsx b/src/pages/user/components/sms-login-form.tsx index 2699c730..de6c4916 100644 --- a/src/pages/user/components/sms-login-form.tsx +++ b/src/pages/user/components/sms-login-form.tsx @@ -102,4 +102,4 @@ SMSLoginForm.defaultProps = { loading: false }; -export default Form.create()(SMSLoginForm); +export default Form.create()(SMSLoginForm); diff --git a/yarn.lock b/yarn.lock index 18ab09ce..1e42e079 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2631,12 +2631,13 @@ aws4@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" -axios@^0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.18.0.tgz#32d53e4851efdc0a11993b6cd000789d70c05102" +axios@^0.19.0: + version "0.19.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.0.tgz#8e09bff3d9122e133f7b8101c8fbdd00ed3d2ab8" + integrity sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ== dependencies: - follow-redirects "^1.3.0" - is-buffer "^1.1.5" + follow-redirects "1.5.10" + is-buffer "^2.0.2" axobject-query@^2.0.1: version "2.0.2" @@ -4890,7 +4891,7 @@ debug@4.1.1, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1: dependencies: ms "^2.1.1" -debug@^3.1.0: +debug@=3.1.0, debug@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" dependencies: @@ -6510,6 +6511,13 @@ fn-name@~2.0.1: resolved "https://registry.yarnpkg.com/fn-name/-/fn-name-2.0.1.tgz#5214d7537a4d06a4a301c0cc262feb84188002e7" integrity sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc= +follow-redirects@1.5.10: + version "1.5.10" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" + integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== + dependencies: + debug "=3.1.0" + follow-redirects@^1.0.0: version "1.7.0" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.7.0.tgz#489ebc198dc0e7f64167bd23b03c4c19b5784c76" @@ -6517,12 +6525,6 @@ follow-redirects@^1.0.0: dependencies: debug "^3.2.6" -follow-redirects@^1.3.0: - version "1.5.6" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.6.tgz#44eb4fe1981dff25e2bd86b7d4033abcdb81e965" - dependencies: - debug "^3.1.0" - for-each@~0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" @@ -7818,7 +7820,7 @@ is-buffer@^1.0.2, is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" -is-buffer@^2.0.0: +is-buffer@^2.0.0, is-buffer@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz#4ecf3fcf749cbd1e472689e109ac66261a25e725" integrity sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==