如何在 React JSX 中使用 Django URL

Shu*_*ham 7 django url django-urls reactjs

我有一个现有的 Django 项目。我想在其中使用 ReactJS,因为 React 使处理状态非常容易。我面临的问题是如何重用 Django 中已经定义的 URL 模板?

示例:主页/urls.py

urlpatterns=[
    url(r'plot/api/(?P<plot_id>[0-9]+)?$', views.LivePlot.as_view(), name='livePlot'),
]
Run Code Online (Sandbox Code Playgroud)

如果我只使用 Django,我可以参考上面的 url,{% url 'Home:livePlot' plot_id %}其中 plot_id 是服务器传递的参数。

使用 React 时我无法利用相同的技术。有什么建议?我可以访问我的 React 代码中的 plot_id。

反应示例:

render: function() {
   return(<div className="plot"><a href=''></a></div>);
}
Run Code Online (Sandbox Code Playgroud)

理想情况下,在上面的示例中,我希望有一种方法可以{% url 'Home:livePlot' plot_id %}在锚标记的 href 属性中放置 或类似的东西,以便链接指向 example.com/plot/{plot_id}。

现在我使用的解决方法涉及自己构建 url。因此,如果我将此 react 组件放在 example.com/sub/sub2 中,我会将 url 构建为'../../plot' + plot_id. 当我将相同的 React 组件放在多个页面中时,这种方法会失败,例如 example.com/sub 和 example.com/sub/sub2 这正是我拥有的用例。