是否有一个正式的方法来导入我定义的路由,并从另一个React组件重定向到该路由器中的命名模式?
假设我的路线如下所示:
# router.cjsx
Routes = require'react-router').Routes
Route = require('react-router').Route
React.renderComponent((
<Routes location="history">
<Route handler={App}>
<Route name="login" handler={LoginComponent} path="/login/" />
</Route>
</Routes>
), document.body)
我有这样一个组件:
# my-component.cjsx
React = require('react')
module.exports = React.createClass
componentDidMount: ->
# If user is not authenticated, redirect them to the login component
if not @props.user.isAuthed
window.location.replace('/login/') # I WOULD RATHER NOT HARDCODE THIS URL
两个问题:
window.location.replace()
或其他React-路由器方法来处理编程重定向?我想写这样的东西:
# my-component.cjsx
MyAppRouter = require('./router').MyRouter # Should I be exporting this?
window.location.replace(MyAppRouter.login)
您可以使用transitiono()
实现您想要的。
如果您位于组件中,则可以使用导航mixin:https://github.com/rackt/react-router/blob/master/docs/api/mixins/Navigation.md
或者,如果您想在组件外部的某个位置导航(例如在存储区内部),可以使用以下示例:https://github.com/rackt/react-router/issues/380. 基本上你需要:
var AppRouter = React.renderComponent((
<Routes location="history">
<Route handler={App}>
<Route name="login" handler={LoginComponent} path="/login/" />
</Route>
</Routes>
), document.body)
// Somewhere else
AppRouter.transitionTo('foo');
我想从API中读取要显示的产品。然后,当我按下其中一个显示的产品时,它应该使用url中的产品ID和要在页面上查看的产品详细信息将我路由到一个组件,以获取有关该产品的详细信息。我在这里读取了API中的数据,并详细显示了产品。 我想通过产品ID添加一个路由链接。如何将详细信息作为其他组件的道具发送?
问题内容: 我一直在思考,我对客户端和服务器之间的路由感到困惑。假设我在将请求发送回Web浏览器之前使用ReactJS进行服务器端渲染,并使用react- router作为客户端路由在页面之间切换而不刷新为SPA。 我想到的是: 路线如何解释?例如,从首页()到帖子页面()的请求 路由在服务器端还是客户端去哪里? 它如何知道如何处理? 问题答案: 注意,此答案涵盖了React Router版本0.
我想到的是: 路线是如何解释的?例如,从主页()到帖子页()的请求 路由在服务器端还是客户端? 它如何知道它是如何处理的?
我已经被困在这个问题上好几天了,我需要互联网的帮助。 我已经为我的react应用程序创建了一个静态HTML登录页项目(这两个项目是分开的),我希望使用Nginx为这两个项目提供服务。我的登录页项目有自己的目录结构和资产,如下所示: 我的React应用程序是一个创建React应用程序,据我所知,在运行npm build之后,它会为您提供一个名为的文件夹,并将所有项目文件正确绑定,以便您可以部署它。现
1. 前言 本小节我们介绍如何使用 VueRouter 命名路由。包括如何定义命名路由、如何使用路由名实现路由跳转。本节的学习内容相对简单,相信同学们看完本小节,并对小节中的案例自己实现一遍就可以熟练掌握了。 2. 定义路由名 在之前的小节中,我们学习了如何定义一个路由: const router = new VueRouter({ routes: [ { path: '/
我正在学习如何通过在线教程做出反应。 这是一个关于使用React路由器的基本示例: 与我的应用程序组件: 但是,我在使用IndexRoute时遇到问题,因为它没有显示任何内容,所以我在npm上搜索react router dom v4模块,但里面没有IndexRoute。相反,它使用的是: 那么,我如何渲染2组件为1路径?