基于后端返回值的Nextjs动态页面

时间:2019-07-07 21:51:54

标签: reactjs next.js

有很多示例如何在nextjs中创建动态页面。

server.get('/p/:id', (req, res) => {
      const actualPage = '/post';
      const queryParams = { title: req.params.id };
      app.render(req, res, actualPage, queryParams);
    });

所有示例或答案都需要第一部分来告诉nextjs需要呈现哪个页面,如/ p

但是,我找不到任何有关如何通过api return创建页面的示例或问题。

例如,当我使用URL / my-favorite-fruit请求服务器时。 api会像这样返回

{
  component: 'PineApple'
}

然后我想将PineApple组件呈现为页面。

有人尝试过这个吗?

1 个答案:

答案 0 :(得分:0)

您必须将包含路由组件和url的对象传递为actualePage

const actualPage = {
    page: ‘/route/file/path/relative/to/pages/folder/‘,
    path: ‘/url/to/show/,j
}

server.get('/p/:id', (req, res) => {
      const actualPage = '/post';
      const queryParams = { title: req.params.id };
      app.render(req, res, actualPage, queryParams);
    });

然后在路径部分中,例如Fruit,您必须渲染Pineapple组件