小编:DR:React Router 4是一个导航组件,在React应用程序中提供声明性路由。在本教程中,您将通过实际示例学习如何使用React Router 4。路由在几乎每个应用程序的体系结构中都是最重要的。你
家
);康斯特机场=()=>(乔莫·肯雅塔
坦博
穆塔拉·穆罕默德
);const城市=()=>(旧金山
伊斯坦布尔
东京
);类应用程序扩展组件{渲染(){返回(主页
机场
城市
);}}导出默认应用程序;在上面的代码中,我们有一些链接,这些链接应该使用组件将用户定向到/、/机场和城市。这些链接中的每一个都有一个组件,一旦当前位置与路由的路径匹配,就应该呈现该组件。不过,这里有点不对劲。让我们检查一下结果。机场航线Home是Home组件的UI,只应在/根路径上呈现。但是,它将在所有路线上渲染。/matches/airports和/cities路由,因此在这两个其他路由中呈现其组件。解决方法是简单地将精确的道具添加到/route。src公司/应用程序js机场路由没有呈现Home组件UI在上面的例子中,所有组件都有一个组件属性,当访问的URL与路由的路径匹配时,它会呈现组件。如果你只想呈现一个小函数而不是一个完整的组件呢?可以使用下面代码中显示的渲染属性。(这是机场路线
)}/>嵌套路由和URL参数如果您需要/courses/business和/courses/technology/这样的URL怎么办?你将如何实现这一目标?src公司/应用程序js导入React,{Component}来自'React';从"react router dom"导入{Route,Link};导入'/应用程序.css';const Courses=({match})=>(技术
商务
经济学
(这是技术
)}/>(这是业务
)}/>(这是经济学
)}/>);/*Home Component*///代码隐藏/*城市组件*///代码隐藏类应用程序扩展组件{渲染(){返回(主页
课程
城市
);}}导出默认应用程序;如果URL位置与/courses路径匹配,那么技术、商业和经济链接将通过courses组件呈现。更进一步,如果URL位置与/courses/technology、/courses/business和/courses/economics路径匹配,则分别呈现这是technology、This is business和This is economics。作为一个开发人员,我确信您已经用一系列重构的眼光来看待这种方法。在上面的代码示例中,有很多重复和硬编码。代码行越多,更改路由就越困难。让我们重构。React Router 4附带一个匹配API。匹配对象是在路由器的路径和URL位置成功匹配时创建的。match对象有一些属性,但我将概述一下您应该立即了解的属性:匹配.url:返回显示URL位置的字符串。用于s匹配路径:返回显示路由路径的字符串。用于s匹配参数:返回从URL解析的值的对象。让我们一步一步地重构。重构Courses组件以获得匹配对象,如下所示:const Courses=({match})=>(技术
业务
经济学
(这是技术
)}/>(这是业务
)}/>(这是经济学
)}/>);测试你的网址是否有效。现在对路线做同样的处理,但是匹配路径.const Courses=({match})=>(技术
业务
经济学
(这是技术
)}/>(这是业务
)}/>(当前网址:http://www.vmchk.com/meishi/12001.html