1.2.13 • Published 3 years ago

@teamix/pro-dashboard v1.2.13

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

ProDashboard - 工作台组件

ProDashboard 为了解决工作台的操作体验一致性,并将通用逻辑进行内部封装,减少业务开发工作台的成本。

何时使用

主要用于工作台页面,搭配微模块进行使用。

属性名描述类型必填默认值
info头部的自定义区域ReactNode
bg头部背景图url,推荐高度96pxstring
intl用于国际化的对象,至少包含get方法Object
baseUrl和加载的模块资源地址进行拼接string
timestamp会在加载的模块资源地址后加查询参数,实现缓存更新string
workbenchConfig获取组件所需完整数据接口配置,初始时也需返回第一个tab下的数据TWorkbenchConfig
manageConfig管理模块弹窗卡片保存接口配置TManageConfig
layoutConfig保存布局接口配置TSaveLayoutConfig
saveTabItemConfig保存tab修改接口配置,暂未透出TSaveTabItemConfig
gridLayoutProps透传给gridLayout的属性,1.1.0版本添加。详见https://web.npm.alibaba-inc.com/package/react-grid-layoutany

CommonRequestConfig

interface CommonRequestConfig {
  /** 请求地址 */
  url: string;
  /** 请求方法 */
  method?:
    | 'get'
    | 'GET'
    | 'delete'
    | 'DELETE'
    | 'head'
    | 'HEAD'
    | 'options'
    | 'OPTIONS'
    | 'post'
    | 'POST'
    | 'put'
    | 'PUT'
    | 'patch'
    | 'PATCH'
    | 'purge'
    | 'PURGE'
    | 'link'
    | 'LINK'
    | 'unlink'
    | 'UNLINK';
  /** 请求参数 */
  params?: any;
  /** 请求参数。同时支持两种类型的参数,会自动根据请求方法做转换 */
  data?: any;
  /** 扩展参数,会经过上下文处理,扩展到数据请求的参数中。
   * 相当于执行 Objec.assign({}, extendParams, params)。
   * 支持数组模式 extendParams = ['{{location}}', '{{fields}}']
   */
  extendParams?: any;
  /** 请求前处理函数
   * 如果返回 false 或者 Promise<false>,则停止发送请求。
   * 如果返回 true 或者 Promise<true>,则正常发送请求。
   * 如果返回其他对象,则正常发送请求,并把返回的对象放到接下来请求处理的上下文中。
   */
  beforeRequest?: (context?: any) => MaybePromise<boolean | object>;
  /** 请求成功后的消息,如有配置,会弹出成功提示 */
  successMsg?: string;
  /** 请求失败后的消息,如有配置,会弹出失败提示 */
  errorMsg?: string;
  /** 请求参数格式化函数,支持上下文类型 */
  formatParams?: CommonRequestFormatter;
  /** 请求返回内容格式化函数,支持上下文类型 */
  formatResult?: CommonRequestFormatter;
  /** 请求成功后的回调函数,支持使用上下文 */
  onSuccess?: string | ((res: any, context?: any) => any);
  /** 请求失败后的回调函数,支持使用上下文 */
  onError?: string | ((error: any, context?: any) => any);
  /** 请求成功后的跳转链接 */
  link?: LinkPath;
}

ICube

单个卡片的数据

interface ICube {
  id: string;
  url: string[]; // 卡片内需要加载的资源链接
  title: string; // 卡片标题
  img: string; // 卡片缩列图
  checked: boolean; // 卡片是否选中
  disabled: boolean; // 卡片是否禁用
  permission?: boolean; // 卡片是否有权限
  props?: any; // 卡片支持的API透传
}

ITabItem

单个tab项的数据

interface ITabItem {
  defaultTab: boolean; // 是否是预置tab项
  id: string;
  name: string; // tab项标题文案
  cubeList: ICube[]; // tab项卡片列表
  layout: string; // tab项卡片布局
  extra?: any; // 其他一些数据项
}

ITab

整体数据

interface ITab {
  tabs: Array<Pick<ITabItem, 'id' | 'name'>>;
  viewTab: ITabItem;
}

TWorkbenchConfig

获取组件所需完整数据接口配置

type TWorkbenchConfig = Pick<
  CommonRequestConfig,
  'url' | 'method' | 'data' | 'params' | 'formatParams' | 'formatResult'
>

TManageConfig

管理模块弹窗卡片保存接口配置

type TManageConfig = Pick<
  CommonRequestConfig,
  | 'url'
  | 'method'
  | 'data'
  | 'params'
  | 'formatParams'
  | 'formatResult'
  | 'successMsg'
  | 'errorMsg'
  | 'onSuccess'
  | 'onError'
>

TSaveLayoutConfig

保存布局接口配置

type TSaveLayoutConfig = Pick<
  CommonRequestConfig,
  | 'url'
  | 'method'
  | 'data'
  | 'params'
  | 'formatParams'
  | 'formatResult'
  | 'successMsg'
  | 'errorMsg'
  | 'onSuccess'
  | 'onError'
>

TSaveTabItemConfig

保存tab修改接口配置

type TSaveTabItemConfig = Pick<
  CommonRequestConfig,
  | 'url'
  | 'method'
  | 'data'
  | 'params'
  | 'formatParams'
  | 'formatResult'
  | 'successMsg'
  | 'errorMsg'
  | 'onSuccess'
  | 'onError'
>
1.2.13

3 years ago

1.2.8

3 years ago

1.2.7

3 years ago

1.2.6

3 years ago

1.2.5

3 years ago

1.2.9

3 years ago

1.2.12

3 years ago

1.2.10

3 years ago

1.2.11

3 years ago

1.2.0

3 years ago

1.2.4

3 years ago

1.2.3

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0-beta.3

4 years ago

1.0.0-beta.2

4 years ago

1.0.0-beta.1

4 years ago