cari

Rumah  >  Soal Jawab  >  teks badan

Ralat semasa cuba menggunakan TypeScript dan bukannya JavaScript: Menjangkakan 1-2 argumen tetapi mendapat 3.ts(2554)

<p>Apabila kami menggunakan JavaScript, kami mempunyai aplikasi Vue.js 2.6, tetapi beberapa kod ditulis dalam TypeScript. Saya tidak tahu banyak tentang TypeScript dan cuba menulis semula kod menggunakan Axios. Ia kelihatan seperti ini: </p> <p><strong>1) Pemanggil: </strong></p> <pre class="brush:php;toolbar:false;">cuba { const params = { id: 1, rumah penginapan: 2, denganRujukan: benar, }; keputusan const = menunggu gpbApi.leadService.getPartnerReferences(params); } tangkap (ralat) { console.log('error = ', error); }</pre> <p><strong>2) Panggilan: </strong></p> <pre class="brush:php;toolbar:false;">async getPartnerReferences(params: any) { jika (!params) kembali; const { data } = menunggu axios.get(`${path}/GroupAccountService/PartnerReferences`, params, { withCredentials: benar }); pulangkan data.data; }</pre></p>
P粉420958692P粉420958692457 hari yang lalu543

membalas semua(1)saya akan balas

  • P粉668113768

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

    Seperti yang ditunjukkan Quentin dalam ulasan, dokumentasi axios mempunyai satu parameter (url) yang diperlukan dan satu parameter pilihan (config). Kod anda diluluskan tiga argumen, jadi ralat adalah tepat dan panggilan tiga argumen get tidak melakukan apa yang anda harapkan dalam JS atau TS.

    Walau bagaimanapun, parameter config menerima kunci bernama config 参数接受一个名为 params 的键,这很可能是您的 params 的预期位置。您可以使用 Javascript 简写只需使用名称 params 而不是 params: params。这意味着您的修复只需将 params , yang kemungkinan besar merupakan lokasi anda yang dimaksudkan. Anda boleh menggunakan Javascript trengkas Hanya gunakan nama

    bukannya params: params. Ini bermakna pembetulan anda hanyalah untuk memindahkan

    di dalam params (pendkap) pemula objek.

    🎜Jika kod ini berfungsi sebelum ini, 🎜 mungkin berada dalam pemula objek pada baris yang sama dengan URL, tetapi telah tersilap dialihkan ke luar 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;
    }

    balas
    0
  • Batalbalas