module-menu 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "module-menu",
3
- "version": "0.2.1",
3
+ "version": "0.2.3",
4
4
  "description": "城市大数据平台公共头部及尾部",
5
5
  "main": "src/pages/index.jsx",
6
6
  "scripts": {
@@ -7,49 +7,38 @@ import _ from 'lodash';
7
7
  import './index.less';
8
8
 
9
9
  const ModuleMenu = ({ sysName, stash }) => {
10
- // stash = 'ii';
11
- const [sessionMenu, setsessionMenu] = useState([]);
10
+ const [sessionMenu, setSessionMenu] = useState([]);
12
11
  const [showMenuList, setshowMenuList] = useState(false);
13
12
  const [menuList, setMenuList] = useState([]);
14
- const [menuListServer, setMenuListServer] = useState([]);
15
13
 
16
14
  useEffect(() => {
17
- let newSessionMenu = getSessionMenu();
18
- setsessionMenu(newSessionMenu);
19
- let newMenuList = getNewMenuList();
20
- setMenuList(newMenuList);
15
+ getSessionMenu();
21
16
  }, []);
22
17
 
23
- const getUserMenusList = async () => {
24
- const res = await Axios(
25
- 'get',
26
- '/admin-api/system/user/getUserMenusList',
27
- '',
28
- {},
29
- );
30
- let menuListServers = [];
31
- if (res.data.code === 0) {
32
- menuListServers =
33
- res.data.data &&
34
- res.data.data.map((item) => {
35
- return {
36
- ...item,
37
- path: item.path.indexOf('/') !== -1 ? item.path : '/' + item.path,
38
- };
39
- });
40
- }
41
- return menuListServers;
42
- };
43
-
44
- const getSessionMenu = async () => {
18
+ const getSessionMenu = () => {
45
19
  if (!stash) {
46
20
  const menuObj = JSON.parse(sessionStorage.getItem('bigdata-menu'));
47
- if (menuObj) {
48
- return menuObj.content || [];
49
- }
50
- return [];
21
+ let menuGet = menuObj?.content || [];
22
+ setSessionMenu(menuGet);
23
+ getNewMenuList(menuGet);
51
24
  } else {
52
- return (await getUserMenusList()) || [];
25
+ Axios('get', '/admin-api/system/user/getUserMenusList', '', {})
26
+ .then((res) => {
27
+ if (res.data.code === 0) {
28
+ let menuGet =
29
+ res.data.data &&
30
+ res.data.data.map((item) => {
31
+ return {
32
+ ...item,
33
+ path:
34
+ item.path.indexOf('/') !== -1 ? item.path : '/' + item.path,
35
+ };
36
+ });
37
+ setSessionMenu(menuGet);
38
+ getNewMenuList(menuGet);
39
+ }
40
+ })
41
+ .catch((e) => console.log('e', e));
53
42
  }
54
43
  };
55
44
 
@@ -127,11 +116,10 @@ const ModuleMenu = ({ sysName, stash }) => {
127
116
  window.location.href = '/#/index';
128
117
  }
129
118
  };
130
- const getNewMenuList = () => {
131
- const sessionMenu = getSessionMenu();
119
+ const getNewMenuList = (menuGet) => {
132
120
  let newMenuList = _.cloneDeep(menuListInit(stash));
133
- if (sessionMenu) {
134
- const pathList = sessionMenu.map((item) => item.path);
121
+ if (menuGet) {
122
+ const pathList = menuGet.map((item) => item.path);
135
123
  // 过滤掉没有权限的子菜单(PS:如果模块下面子菜单都没有,则不显示该模块)
136
124
  for (let index = newMenuList.length - 1; index >= 0; index--) {
137
125
  const menuItem = newMenuList[index];