Erreur lors de la tentative d'utilisation de TypeScript au lieu de JavaScript : 1 à 2 arguments attendus mais obtenu 3.ts(2554)
P粉420958692
2023-09-03 19:03:22
<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>
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
au lieu deconfig
accepte une clé nomméeconfig
参数接受一个名为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 nomparams : params
. Cela signifie que votre solution consiste simplement à déplacer leà l'intérieur du
🎜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. 🎜params
(accolades) de l'initialiseur d'objet.