# useTabs

操作多标签页

## Usage

```vue
<script lang="ts" setup>
  import { useTabs } from '@eciol/hooks';

  const {
    refreshPage,
    closeAll,
    closeLeft,
    closeRight,
    closeOther,
    closeCurrent,
    close,
    setTitle,
    updatePath,
  } = useTabs();
  setTitle('设置了tab的新标题');
</script>
```

## Type Declarations

```ts
declare function useTabs(_router?: Router): {
  /**
   * @description 刷新当前页面
   */
  refreshPage: () => Promise<void>;
  /**
   * @description 关闭全部标签页
   */
  closeAll: () => Promise<void>;
  /**
   * @description 关闭左侧标签页
   */
  closeLeft: () => Promise<void>;
  /**
   * @description 关闭右侧标签页
   */
  closeRight: () => Promise<void>;
  /**
   * @description 关闭其它标签页
   */
  closeOther: () => Promise<void>;
  /**
   * @description 关闭当前标签页
   */
  closeCurrent: () => Promise<void>;
  /**
   * @description 关闭标签页
   */
  close: (tab?: RouteLocationNormalized) => Promise<void>;
  /**
   * @description 设置标签页标题
   */
  setTitle: (title: string, tab?: RouteLocationNormalized) => Promise<void>;
  /**
   * @description 更新标签页路径
   */
  updatePath: (fullPath: string, tab?: RouteLocationNormalized) => Promise<void>;
};
```
