javascript - 我可以在 django 项目中使用反应路由器吗?
问题描述
我有一个在前端使用 React 并在后端使用 Django 的项目。
我也在我的项目中使用了反应路由器,代码如下所示:
<BrowserRouter>
<Switch>
<Route path="/" exact component={Home} />
<Route path="/teachers" exact component={Teachers} />
<Route path="/courses" exact component={Courses}/>
<Route path="/about" exact component={About} />
<Route path="/posts" exact component={Posts} />
</Switch>
</BrowserRouter>
在 django 中,我的 urls 文件如下所示:
urlpatterns = [
path('', views.index, name="index"),
]
问题是,每当我尝试从反应路由器导航到页面时,我都会从 django 收到 404 错误。
解决方案
哥们我也有同样的问题。根据我的研究,答案实际上是在 django 中的 url 末尾抛出一个 catch all 。我只能找到旧的方法。
url(r'^(%s)?$' % '|'.join(routes), TemplateView.as_view(template_name='index.html'))
我不知道如何用路径来做,但我之前已经找到了。有可能
re_path(r'.*', views.index)
让我知道这是否有效,这样我就可以回家使用它了:)
推荐阅读
- identityserver4 - 在 Postman 中调用授权路由正常,但从控制台客户端应用程序未授权
- php - 为不同的数组值创建 SWITCH 案例
- c# - SocketException 现有连接被 Flurl 强行关闭
- postgresql - 将旧数据库数据回填到现有 Postgres 数据库的最佳方法是什么?
- php - 使用终端导入自定义库或模板,就像 Laravel Artisan make 命令一样
- ubuntu - 使用 caffe 解析器支持构建 armNN 的问题
- jbehave - Jbehave 与 pico 并行执行 (jbehave-pico)
- php - 此路线不支持发布方法
- c# - 如何在 Xamarin UWP 应用程序中实现 Pointer-/MouseMoveEvents?
- java - 即使使用正确的 .jar 文件,也无法使用 IO Octave 包获取 xmlread