Как я могу использовать разные страницы 404. js в следующем проекте js? - PullRequest
1 голос
/ 06 августа 2020

Я работаю над следующим проектом js, который использует подпапки страниц и затем перезаписывает их для работы с ними

/pages
  /sitea
  /siteb

/config
  /sitea
  /siteb
module.exports = {
  async rewrites() {
    return [
      {
        source: '/',
        destination: '/sitea/',
      },
      {
        source: '/:path*',
        destination: '/sitea/:path*',
      }
    ]
  },
}

Затем каждый экземпляр приложения загружает определенный каталог c в соответствии с мой .env. Это делается с помощью next.config.js

let config = require(`./config/${process.env.APP}/next`)

module.exports = {
  ...config
}

. Это очень хорошо работает практически со всеми сценариями, кроме настраиваемой страницы 404. Мне нужна страница sitea-specifici c 404, а также siteb-specifici c 404.

Добавление 404.js к /pages/sitea не помогает, поскольку ожидается, что 404.js быть в /pages. Я попытался добавить еще одну перезапись в конфигурацию:

module.exports = {
  async rewrites() {
    return [
      {
        source: '/',
        destination: '/sitea/',
      },
      {
        source: '/:path*',
        destination: '/sitea/:path*',
      },
      {
        source: '/:path*',
        destination: '/sitea/404',
      }
    ]
  },
}

, чтобы загрузить /pages/sitea/404.js, однако, похоже, это все еще загружает вторую перезапись. Ты хоть представляешь, как я могу sh это сделать?

...