如何使用preact-router以编程方式导航?

时间:2017-03-09 21:32:34

标签: javascript typescript preact

我正在尝试使用typescript,preact和preact-router来弄清楚如何构建Web应用程序的前端部分。我已经走了很长的路,但我仍然需要弄清楚如何使用preact-router以编程方式导航(重定向)。我可以history.replaceState(null, null, '/#/redirectedUrl');,但是当更改位置栏中的URL时,preact-router不会路由到新的URL。

使用preact-router时以编程方式导航的首选方法是什么?

2 个答案:

答案 0 :(得分:8)

route导入功能'preact-router'是可行的方法:

import { route } from 'preact-router';
route('/url/to/rout/to');

答案 1 :(得分:1)

您可以根据需要以两种方式完成

import { route } from 'preact-router';
route('url');

这将在历史记录中创建 pushState (即),它将为此网址创建一个新条目

import { route } from 'preact-router';
route('url', true);

这将在历史记录中创建 replaceState (即),这将使用您将路由到的网址替换历史记录中的当前网页网址条目。您可以在以下情况下使用此功能,例如,当从登录屏幕路由到您的主页/ dashbaord屏幕时,点击浏览器后退按钮,您不希望用户在用户登录后返回登录屏幕in(从而用dashbaord条目替换登录条目)。