处理嵌套页面之间的路由

时间:2021-01-13 10:00:50

标签: react-router

<Switch>
    <Route exact path={`${path}/dashboard`} component={Dashboard} />
    <Route exact path={`${path}/submissions`} component={SubmissionSelect} />
    <Route exact path={`${path}/submissions/:id`} component={SubmissionPage} />
</Switch>

应用程序的工作原理(假设根 URL 为 localhost:3000):

  • 点击指向 Dashboard 组件的链接,我将被路由到 localhost:3000/dashboard
  • Dashboard 组件中,我点击另一个链接,将我带到 SubmissionPage 组件(例如 localhost:3000/submissions/9
  • 但是,当我尝试导航回 Dashboard 组件(或任何其他组件)时,URL 现在变成了 localhost:3000/submissions/dashboard
  • 如上所示,单词 submissions 被错误地附加到路径的末尾,现在整个路由都被破坏了。

我尝试参考下面 react-router-dom 提供的嵌套教程,但它的用例略有不同。 https://reactrouter.com/web/example/nesting

我的路由有问题吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

您需要以相对于应用程序根目录的 from app import db, ma from marshmallow import fields class Table(db.Model): __tablename__ = 'table' id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(30), unique=False, nullable=True) class TableSchema(ma.Schema): class Meta: strict = True newTitleName = fields.String(attribute="title") def my_function(): _query = db.session.query(Table).all() ser = TableSchema(many=True) result = ser.dump(_query) print(result) my_function() 开始您的路由。试试这个并更改您的 /

Link component to use new addresses