1

我仍然没有太多使用现代继电器的经验,并且正在尝试实施搜索。

为此,我使用“RefetchContainer”:

export default createRefetchContainer(
    SearchComponent,
    {
    base: graphql`
      fragment SearchComponent_base on Base
      @argumentDefinitions(
        input: {type: "FireSearchInput!" defaultValue: {page: 0,queryString:""}}
        )
            {                
                    search(input: $input){
                    total
                    ...SearchResult_searchResult
                    }
            }
      `
    },
    graphql`
    query SearchComponentRefetchQuery($input: FireSearchInput!) {        
        ...SearchComponent_base @arguments(input: $input)
     }
    `
)

问题只是当您启动应用程序时查询已经执行,没有输入。

是否可以禁止自动查询并仅使用命令执行它this.props.relay.refetch

4

1 回答 1

1

解决方案是简单地使用 a QueryRenderer

<QueryRenderer
  environment={environment}
  query={graphql`
    query SearchComponent($input: FireSearchInput!) {
        search(input: $input){
             total
             ...SearchResult_searchResult
           }
    }
  `}
  variables={{
    input: {///my input}
  }}
于 2017-11-28T12:00:29.710 回答