UNPKG

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