Как заставить Next JS dynamici c маршрутизацию работать с RelayJS - PullRequest
0 голосов
/ 20 января 2020

Я пытаюсь переключить нашу маршрутизацию на Next JS 'v9 Dynami c маршрутизация , удаляя предыдущую библиотеку next-маршруты .

Из-за того, что я играю и смотрю на документы, кажется, что я применяю определенную файловую структуру, если мне нужно передать параметр / слаг. например, для сообщения в блоге

blog
  [slug].tsx

Позволит мне использовать маршрут типа blog/id123.

Мы используем реле JS, которое также зависит от имени файла. В этом случае все компоненты React должны именовать запросы в формате FileNameQuery. Это означало бы, что мне нужно будет называть все мои запросы Relay по имени передаваемой мной переменной, которая не будет хорошо масштабироваться.

Кому-нибудь удалось совместить их хорошо?

1 Ответ

0 голосов
/ 25 февраля 2020

withData. js в примере with-relay-modern

if (options.query) {
  // Provide the `url` prop data in case a graphql query uses it
  // const url = { query: ctx.query, pathname: ctx.pathname }
  const variables = ctx.query
    ? Object.assign((options.variables || {}), ctx.query)
    : (options.variables || {})
  // const variables = options.variables || { }
  // const cacheConfig = { force: true }
  // TODO: Consider RelayQueryResponseCache
  // https://github.com/facebook/relay/issues/1687#issuecomment-302931855
  queryProps = await fetchQuery(environment, options.query, variables) // , cacheConfig
  queryRecords = environment
    .getStore()
    .getSource()
    .toJSON()
}

const variables = ctx.query ? Object.assign((options.variables || {}), ctx.query) : (options.variables || {})

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...