繁体   English   中英

React Apollo graphql富集器不起作用

[英]React Apollo graphql enricher not working

由于某些原因,graphql高阶函数的行为不符合预期,特别是甚至没有调用查询。 这就是我现在所拥有的:

function viewReducer({ dispatch, value }) {
    let temp = () => (<MyPage
                          onReconnect = {() => {dispatch(restartSetup());}}
                      />);
    let View = graphql(myQuery)(temp);
    return <View />
}

export { viewReducer }; 

我到底在这里想念什么?

graphql react-apollo文档。

编辑 :经过一些调试后,似乎道具没有被传递到实际的组件。 更新了调试代码:

function viewReducer({ dispatch, value }) {
    let temp = () => (<MyPage
                          onReconnect = {() => {dispatch(restartSetup());}}
                      />);
    let View = graphql(myQuery,
                    options: {
                        fetchPolicy: 'cache-and-network'
                    },
                    props: (props) => {
                        console.log("[INFO] " + JSON.stringify(props))
                        return props;
                    }               
               )(temp);
    return <View />
}

我可以看到已获取数据,但是道具没有被传递,仍然没有定义。

固定。

问题出在这里:

let temp = () => (<MyPage
                          onReconnect = {() => {dispatch(restartSetup());}}
                      />);

由于此闭包不接受props作为参数,因此按原样执行并渲染。 为了解决这个问题,我只添加了props作为参数:

let temp = ({data}) => (<MyPage
                          onReconnect = {() => {dispatch(restartSetup());}}
                          data = {data}
                      />);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM