Маршрутизаторы в Nextjs - PullRequest
       81

Маршрутизаторы в Nextjs

1 голос
/ 19 февраля 2020

Я делаю изменения в моем существующем приложении, построенном с использованием ReactJS + Typescript, и я переносил его в Next Js вместе с Typescript.

Как я могу внести изменения в маршрутизатор? Я проверяю документацию Next js, но я очень запутался.

В настоящее время маршрутизация находится в моем файле App.tsx . Вот код Я хочу внести изменения, потому что когда я нажимаю на handleSave в то время, мой блог не сохраняется. Я считаю, что проблема заключается в маршрутизации.

    return (
      <div className="All-Routes">
        <Switch>
          <Route
            exact
            path="/"
            component={props => <Index {...props} posts={this.state.posts} />}
          />
          <Route
            path="/posts/:id"
            component={props => (
              <Data {...props} post={this.state.posts[props.match.params.id]} />
            )}
          />
          <Route
            exactpath="/new"
            component={props => <Saving {...props} onSave={this.handleSave} />}
          />
        </Switch>
        <LocationDisplay />
      </div>
    );
  }
}
export default App;

1 Ответ

2 голосов
/ 26 апреля 2020

создайте маршруты. js файл, как показано ниже:

const nextRoutes = require('next-routes')
const routes = (module.exports = nextRoutes())

routes.add('/', 'index')

и запишите сервер. js с expressjs и добавьте в него следующую строку:

const routes = require('./routes')
const handler = routes.getRequestHandler(app)
...
server.get('*', (req, res) => {
    handler(req, res, parsedUrl)
  })
...