• menuTab 方法


    在使用 menuTab 方法之前需引入相应的方法。

    import { ... } from 'utils/menuTab';
    

    onBeforeMenuTabRemove

    参数

    [tabKey](String):tabKey

    [onBeforeHandler](() => boolean | Promise):返回值为 false 或 Promise.reject 将阻止tab页关闭

    示例

    
    onBeforeMenuTabRemove('/test', () => {
        return new Promise((resolve, reject) => {
          const { flag } = this.state;
          if (flag) {
            Modal.confirm({
              title: intl
                .get('hzero.common.message.confirm.giveUpTip')
                .d('你有修改未保存,是否确认离开?'),
              onOk: () => {
                resolve();
              },
              onCancel: () => {
                reject();
              },
            });
          } else {
            resolve();
          }
        });
      });
    
    
    

    getBeforeMenuTabRemove

    参数

    [tabKey](String):tabKey

    返回

    (Function|Any) :设置的回调函数或者设置的其他类型的字段

    示例

    
    const onBeforeHandler = getBeforeMenuTabRemove('/test');
    // => undefined
    
    

    deleteBeforeMenuTabRemove

    参数

    [tabKey](String):tabKey

    示例

    
    deleteBeforeMenuTabRemove('/test');
    
    

    openTab

    参数

    [newTab](Object):tabKey

    示例

    
    openTab({
        key: `/test`, // 打开 tab 的 key
        path: `/test/list`, // 打开页面的path
        title: 'hzero.common.title.test', // tab的标题
        search: queryString.stringify({
          action: 'test',
        }), // history 的 search 值
        icon: null, // 图标的值,antd 的 Icon
        closable: true, // tab 是否可以关闭
        type: 'menu', // tab 类型
      });
    
    

    closeTab

    参数

    [key](String):tab 的key

    示例

    
    closeTab('/test');
    
    

    updateTab

    参数

    [tab](Object):tab

    示例

    
    updateTab({
      closable: true,
      icon: "home",
      key: "/test",
      path: "/test",
      search: undefined,
      title: "hzero.common.title.test",
      type: "menu",
      });
    
    

    tabListen

    参数

    [pathname](String=''):URL的路径部分

    示例

    
    tabListen('/test/detail');