recherche

Maison  >  Questions et réponses  >  le corps du texte

Erreur lors de la tentative d'utilisation de TypeScript au lieu de JavaScript : 1 à 2 arguments attendus mais obtenu 3.ts(2554)

<p>Lorsque nous utilisons JavaScript, nous avons une application Vue.js 2.6, mais certains codes sont écrits en TypeScript. Je ne connais pas grand-chose à TypeScript et j'essaie de réécrire le code à l'aide d'Axios. Cela ressemble à ceci : </p> <p><strong>1) Appelant : </strong></p> <pre class="brush:php;toolbar:false;">essayer { paramètres const = { identifiant : 1, auberge : 2, avecRéférences : vrai, } ; résultat const = attendre gpbApi.leadService.getPartnerReferences(params); } attraper (erreur) { console.log('erreur = ', erreur); }</pré> <p><strong>2) Appel : </strong></p> <pre class="brush:php;toolbar:false;">async getPartnerReferences(params: any) { si (!params) revient ; const { data } = wait axios.get(`${path}/GroupAccountService/PartnerReferences`, params, { withCredentials : vrai }); renvoyer data.data ; }</pre></p>
P粉420958692P粉420958692456 Il y a quelques jours541

répondre à tous(1)je répondrai

  • P粉668113768

    P粉6681137682023-09-04 10:33:29

    Comme Quentin l'a souligné dans les commentaires, la documentation axios a un paramètre obligatoire (url) et un paramètre facultatif (config). Votre code reçoit trois arguments, donc l'erreur est exacte, et l'appel get à trois arguments ne fait pas ce que vous attendez dans JS ou TS.

    Cependant, le paramètre config accepte une clé nommée config 参数接受一个名为 params 的键,这很可能是您的 params 的预期位置。您可以使用 Javascript 简写只需使用名称 params 而不是 params: params。这意味着您的修复只需将 params , qui est très probablement l'emplacement prévu de votre . Vous pouvez utiliser le un raccourci Javascript Utilisez simplement le nom

    au lieu de params : params. Cela signifie que votre solution consiste simplement à déplacer le

    à l'intérieur du params (accolades) de l'initialiseur d'objet.

    🎜Si ce code fonctionnait auparavant, 🎜 aurait pu se trouver dans un initialiseur d'objet sur la même ligne que l'URL, mais a été déplacé par erreur en dehors de l'URL. 🎜
    async getPartnerReferences(params: any) {
      if (!params) return;
      const { data } = await axios.get(`your.url`, {
        params, // this is now a part of the config object
        withCredentials: true
      });
      return data.data;
    }

    répondre
    0
  • Annulerrépondre