首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用wmr / preact-iso编程路由?

用wmr / preact-iso编程路由?
EN

Stack Overflow用户
提问于 2022-01-18 19:08:43
回答 1查看 126关注 0票数 1

我一直在玩wmr预演-,来自preact-cli,preact-路由器等等,我有点困惑如何做一些我以前能够做的事情。

例如:preact路由器的route()功能似乎在preact-iso的路由器包中丢失了.

我将如何从代码中路由?

我以前可以这样做:

代码语言:javascript
复制
import { route } from 'preact-router';

// Send the user to /path
route('/path');

那么我该怎么做WMR / preact-iso?

还有一点关联:有什么方法可以使用preact-iso的<Link />组件吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-18 21:03:17

route()存在于useLocation钩子上。

代码语言:javascript
复制
import { useLocation } from 'preact-iso';

const location = useLocation();

location.route('/error');

编辑:错过了关于<Link>的问题。你可以自己创造这个,我们没有同等的。只是锚标签上的浅层包装而已。

这里有一个非常直接的副本:

代码语言:javascript
复制
function Link({
    class: c,
    className,
    activeClass,
    activeClassName,
    ...props
}) {
    const inactive = [c, className].filter(Boolean).join(' ');
    const active = [c, className, activeClass, activeClassName].filter(Boolean).join(' ');
    const matches = useLocation().url === props.href;

    return <a { ...props } class={matches ? active : inactive} />;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70761104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档