UNPKG

1.4 kBTypeScriptView Raw
1import Taro from "@tarojs/taro";
2import { History } from "history";
3import { AppInstance } from "@tarojs/runtime";
4import { MpaRouterConfig, SpaRouterConfig } from "../../types/router";
5declare function navigateTo(option: Taro.navigateTo.Option): ReturnType<typeof Taro.navigateTo>;
6declare function redirectTo(option: Taro.redirectTo.Option): ReturnType<typeof Taro.redirectTo>;
7declare function navigateBack(option?: Taro.navigateBack.Option): ReturnType<typeof Taro.navigateBack>;
8declare function switchTab(option: Taro.switchTab.Option): ReturnType<typeof Taro.switchTab>;
9declare function reLaunch(option: Taro.reLaunch.Option): ReturnType<typeof Taro.reLaunch>;
10declare function getCurrentPages(): Taro.Page[];
11declare let history: History;
12// TODO 支持多路由 (APP 生命周期仅触发一次)
13/** Note: 关于多页面应用
14 * - 需要配置路由映射(根目录跳转、404 页面……)
15 * - app.onPageNotFound 事件不支持
16 * - 应用生命周期可能多次触发
17 * - TabBar 会多次加载
18 * - 不支持路由动画
19 */
20declare function createMultiRouter(app: AppInstance, config: MpaRouterConfig, framework?: string): Promise<void>;
21declare function createRouter(app: AppInstance, config: SpaRouterConfig, framework?: string): () => void;
22export { navigateTo, redirectTo, navigateBack, switchTab, reLaunch, getCurrentPages, history, createMultiRouter, createRouter };