Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
247 views
in Technique[技术] by (71.8m points)

reactjs - How to launch apollo query?

I've created an application with tabs, ok?

And I've created a component that launch a query using apollo client.

My problem is that on first time it's all ok, do the query and get the response, but when I change other tab doesnt launch query again.

How can force that launch query again?

Here is my code:

const GeojsonLayer = ({
    layerId,
    dynamic = true,
    mapId,
    map,
    performance = true,
    deployment = false,
    onLoadingLayer,
    onErrorLayer,
    onLoadedLayer,
}: PerformanceLayerType) => {
    const dmas = useSelector(
        (state: GlobalReducerStateType) => state?.checkboxtree?.selectedDmas
    );

    const technologies = useSelector((state: GlobalReducerStateType) => {
        state?.app?.technologies?.map(
            (technology: TechNologyType) => technology.readingMethodCode
        );
    });

    const { loading, error, data } = useQuery(FEATURE_LAYERS, {
        variables: {
            dmas,
            technologies,
            performance,
            deployment,
        },
    });

    useEffect(() => {
        if (error) {
            onErrorLayer(error);
        }
    }, [error]);

    useEffect(() => {
        onLoadingLayer(loading);
    }, [loading]);

    useEffect(() => {
        if (!loading && data) {
            const layer: GOGeoJsonLayer = map
                ?.getStaging(mapId)
                ?.getLayer(layerId);
            layer.addFeatures(data, dynamic);
            onLoadedLayer(layer);
        }
    }, [data]);

    return null;
};

export default GeojsonLayer;
question from:https://stackoverflow.com/questions/65891295/how-to-launch-apollo-query

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...