GraphQL Relay defaultValue для массива объекта в определениях аргументов фрагмента - PullRequest
0 голосов
/ 05 февраля 2019

Я пытаюсь определить свой createRefetchContainer с фрагментом.Тем не менее, я получаю сообщение об ошибке defaultValue массива типа объекта.Я проверил документацию, но не смог понять, как обрабатывать атрибут значения по умолчанию для массива параметра типа объекта.

Я пытался поместить пустой массив " [] " или " [{key: "status", значение: "active"}]", но ни один из них не работал.

export default createRefetchContainer(
  translate('admin')(UserList),
  graphql`
    fragment UserList_usersWithPage on Query
      @argumentDefinitions(
        filters: { type: [UserFilterInput], defaultValue: [] }
        pageNumber: { type: Int, defaultValue: 0 }
        pageSize: { type: Int, defaultValue: 25 }
      ) {
      page: findUsersWithPage(filters: $filters, pageNumber: $pageNumber, pageSize: $pageSize) {
        totalPages
        totalElements
        users {
          ...MiniProfile_user @relay(mask: false)
        }
      }
    }

    fragment UserList_filterFields on Query {
      accounts: findDistinctUserAccounts
      departments: findDistinctUserDepartments
      expertises: findDistinctUserExpertises
      ranks: findAllUserRankCodes
    }
  `,
  graphql`
    query UserListRefetchQuery($userFilterInput: [UserFilterInput], $pageNumber: Int, $pageSize: Int) {
      ...UserList_usersWithPage
        @arguments(userFilterInput: $userFilterInput, pageNumber: $pageNumber, pageSize: $pageSize)
    }
  `,
);


ERROR:
GraphQLParser: Expected definition for variable `filters` to be an object 
with the following shape: `{type: string, defaultValue?: mixed, nonNull?: 
boolean, list?: boolean}`, got `[object Object]`. Source: document 
`UserList_usersWithPage` file: `scenes/admin/pages/UserList.js`. 
...