Heim  >  Fragen und Antworten  >  Hauptteil

Wie übergebe ich Parameter an die Funktion in der useQuery-Funktion von React Query, wenn aktiviert auf false gesetzt ist?

<p>Ich erstelle eine Abfrage, die es mir ermöglicht, eine Vorlage zu kopieren. Die Abfrage zum Kopieren der Vorlage erfordert eine ID, die zunächst jedoch nicht vorhanden ist. Wie kann ich die ID als Parameter an die Abfragefunktion übergeben, wenn ich sie in der onClick-Funktion aufrufe? </p> <p>Funktion zum Kopieren der Vorlage:</p> <pre class="brush:php;toolbar:false;">duplicate: ({ queryKey: [_key, id] }) => axios.get(`${base_url}templates/${id}/duplicate ?auth_token=${auth_token}`),</pre> <p>Meine Anfrage:</p> <pre class="brush:php;toolbar:false;">const { data: doubleTemplate, refetch: doubleTemplateFunc } = useQuery( [`Vorlage], api.duplicate, { aktiviert: falsch, onSuccess: () => message.success('Vorlage erfolgreich kopiert.') }, } )</pre> Die <p>onClick-Methode wird in der Render-Methode der Antd-Tabelle verwendet und gibt mir die ID über <code>record.id</code>. </p> <pre class="brush:php;toolbar:false;">render: (_value, record) => <div onClick={() => doubleTemplateFunc(record.id)> Kopieren </div> ),</pre>
P粉493313067P粉493313067443 Tage vor537

Antworte allen(1)Ich werde antworten

  • P粉675258598

    P粉6752585982023-08-27 14:57:52

    当使用react-query库中的useQuery hook并将enabled设置为false时,您仍然可以将参数传递给正在执行的函数。您只需要将参数作为对象传递给useQuery hook的第二个参数。
    const { data, isLoading, error } = useQuery(
    ["fetchData", { id: 123, name: "John" }],
    (_key, params) => {
    return fetch(`https://your-api.com/data/${params.id}?name=${params.name}`)
      .then(res => res.json());
    },
    { enabled: false }
    );

    Antwort
    0
  • StornierenAntwort