是否可以根据用户代理(设备类型)在 vercel 上使用 nextjs 提供不同版本的静态页面?

时间:2021-02-10 19:56:34

标签: reactjs next.js vercel

nextjs 页面 /users/[userid] 在构建时在 vercel 平台中静态呈现。 无论如何,是否可以根据用户代理(设备类型)通过 vercel 或 nextjs 上的一些配置来提供该页面的两个不同版本? (同时保持静态)

请求 example.com/users/userid 获得不同静态页面的移动用户与请求相同路径的桌面用户不同。

1 个答案:

答案 0 :(得分:2)

目前,此功能不可用。但是,我们正在开发一个应该可以实现的更新。

敬请关注 Vercel 平台和 Next.js 的更新。

编辑:现在可以使用“has”属性和“rewrites”:

// next.config.js
module.exports = {
  async rewrites() {
    return {
      beforeFiles: [
        {
          source: '/some-page',
          destination: '/somewhere-else',
          has: [{
            type: 'header', 
            key: 'user-header',
            value: 'insert-regex-here'
          }],
        },
      ],
      // ...
    }
  },
}