내 서버에서 데이터가 올바르게 반환되었지만 제공되지 않는 오류가 발생합니다.Relay Modern, prop not supplied
~ expected prop `query` to be supplied to `Relay(ContactsPage)`, but got `undefined`.
다음과 같습니다.
import makeRouteConfig from 'found/lib/makeRouteConfig';
import Route from 'found/lib/Route';
import React from 'react';
import { graphql } from 'react-relay';
import ContactsPage from '../components/ContactsPage';
export default makeRouteConfig(
<Route
path="/contacts"
Component={ContactsPage}
prepareVariables={ (params) => ({
...params,
count: 5,
order: "title",
postType: ['mp_contact'],
})}
query={graphql`
query contacts_WPQuery_Query(
$count: Int!
$order: String!
$cursor: String
$categoryName: String
$postType: [String]
) {
...ContactsPage_query
}
`}
/>
);
데이터가 서버에서 가져온 것을 확인할 수 있습니다.
그리고 작동 유사한 패턴을 다음과 같은 다른 구성 요소가 있습니다/ 이것은 ContactsPage 구성 요소 I 쿼리에서 루트 쿼리를 중첩 변경하여이 문제를 해결할 수 있었다
import React, { Component } from 'react'
import ContactsList from './ContactsList'
import { createFragmentContainer, graphql } from 'react-relay'
class ContactsPage extends Component {
render() {
const {query} = this.props
return (
<div>
<ContactsList wp_query={query.wp_query} />
</div>
)
}
}
export default createFragmentContainer(
ContactsPage,
{
query: graphql`
fragment ContactsPage_query on Query {
wp_query {
id
...ContactsList_wp_query
}
}
`
}
)