0.2.2-alpha.2 • Published 4 months ago

@firesoon/plugin-layout v0.2.2-alpha.2

Weekly downloads
-
License
ISC
Repository
-
Last release
4 months ago

为了进一步降低研发成本,提供 @firesoon/plugin-layout 插件,将布局通过 umi 插件的方式内置。其中,packages/plugin-layout 为插件代码,packages/design-layout 为布局代码。

@firesoon/plugin-layout

安装

npm install @firesoon/plugin-layout --save-dev

使用

.umirc.ts文件

{
    plugins: [
        '@firesoon/plugin-layout',
    ],
    firesoonLayout: {},
}

app.ts文件

// 添加
export async function getInitialState() {
  // @umijs/plugin-initial-state插件
  const menuInfo = await api.getMenuList(); //获取服务端菜单数据
  const userInfo = await api.getUserInfo(); // 获取用户信息
  const roleInfo = await api.getRoleList(); // 获取角色信息
  if (
    (menuInfo && menuInfo.httpCode === 403) ||
    (menuInfo &&
      menuInfo.httpCode === 300 &&
      menuInfo.msg === '数据权限没有初始化,请联系管理员')
  ) {
    history.push('/errorPage?type=private');
  }
  if (
    menuInfo.httpCode === 200 &&
    userInfo.httpCode === 200 &&
    roleInfo.httpCode === 200
  ) {
    return {
      remoteMenu: menuInfo.data, //服务端菜单
      userInfo: userInfo.data, //用户信息
      roleList: roleInfo.data.sysRoleVoList.map((v) => ({
        //角色list
        name: v.roleName,
        value: v.id,
      })),
      breadcrumbMenus: [], //面包屑数据
      activeKey: '',
    };
  }
}

// 添加
export const firesoonLayout = {
  // @firesoon/plugin-layout插件
  logo, //项目logo
  homeId: 'home', // HOME_ID
  iconMap, //菜单图标
  localMenu, // 本地路透配置
  logoutAction: () => {
    //退出登录操作
    api.logout().then((res) => {
      if (res && res.httpCode === 200) {
        localStorage.clear();
        sessionStorage.clear();
        window.location.href = res.data;
      }
    });
  },
  onChangeRoleAction: (value) => {
    //切换角色操作
    api.modifyRole({ id: value }).then((res) => {
      if (res.httpCode === 200) {
        window.location.reload();
      }
    });
  },
  modifyPwdAction: (params, callback) => {
    //修改密码操作
    api.modifyPassword(params).then((res) => {
      if (res.httpCode === 200) {
        message.success('修改成功');
        callback(true);
      } else {
        callback(false, res);
      }
    });
  },
};

修改记录

V 0.1.5

  • 增加机构默认切换逻辑:当需要显示机构,且机构不显示全部选项,且当前hospitalAreaId为-1,则默认切换第一个机构

V 0.1.6

  • 增加免密登录逻辑,添加如下配置
import * as api from '@/services/index';

export const firesoonLayout = {
    ...,
      loginNotPwdService: api.loginNotPwd, // 免密登录接口,插件内部调用
    ...
}

V 0.1.7

  • 无菜单权限loading状态处理

V 0.1.8

  • 优化菜单接口状态码为300时的异常处理
  • 调整initDispatcher方法的返回参数,第一个参数为dispatch,第二个参数为对象,包含用户登录的userInfo和roleInfo

V 0.1.9

  • 新增修改密码时,表单验证是否使用后端接口返回值进行验证的逻辑,initAppService方法调整(api.getPasswordComplexity()非必传),如下:
  initAppService: () => {
    return [api.getMenuList(), api.getUserInfo(), api.getRoleList(), api.getPasswordComplexity()];
  },

V 0.1.21

  • 修复菜单中文映射远程返回值问题
  • 移除断网状态展示界面逻辑

V 0.1.22

  • 修复面包屑展示信息问题

V 0.1.23

  • 新增menuMode参数,当menuMode=local时,使用本地配置的菜单数据

V 0.1.24

  • 增加encryptedInfo配置,默认为false;设置为true,则开启storage敏感数据加密存储

V 0.1.25

  • 增加noLogin配置项,支撑忽略登录配置化;

V 0.1.31

  • 修复sid、signKey不存在时,访问应用内部路由,跳转登录页
0.2.2-alpha.0

4 months ago

0.2.2-alpha.1

4 months ago

0.2.2-alpha.2

4 months ago

0.2.1

6 months ago

0.2.0

6 months ago

0.1.32

12 months ago

0.1.30

1 year ago

0.1.31

1 year ago

0.1.27-beta.1

1 year ago

0.1.28

1 year ago

0.1.29

1 year ago

1.0.0

2 years ago

1.0.0-beta.0

2 years ago

0.1.27

2 years ago

0.1.24

2 years ago

0.1.25

2 years ago

0.1.26

2 years ago

0.1.27-beta.0

2 years ago

0.1.22

2 years ago

0.1.23

2 years ago

0.1.21

2 years ago

0.1.20

2 years ago

0.1.19

2 years ago

0.1.10

2 years ago

0.1.11

2 years ago

0.1.12

2 years ago

0.1.13

2 years ago

0.1.14

2 years ago

0.1.15

2 years ago

0.1.16

2 years ago

0.1.8

2 years ago

0.1.17

2 years ago

0.1.7

2 years ago

0.1.18

2 years ago

0.1.9

2 years ago

0.1.4

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.0

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.1.3

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago