Rumah  >  Soal Jawab  >  teks badan

Axios "Tidak boleh menggunakan pernyataan import di luar modul"

Saya mempunyai aplikasi Vue.js dengan dua fail yang mengandungi:

从“axios”Import axios

Fail ini terletak dalam src/lib dalam aplikasi dan mengandungi pernyataan import pada baris pertama.

Tidak kira apa package.json katakan, menjalankan ujian pada Github akan menyebabkan Axios 1.0.0 dipasang dan kini sebarang ujian yang melibatkan fail ini akan gagal dengan ralat di atas.

Menukar pernyataan

kepada const axios = require("axios") juga gagal; node_modules/axios/index.js mengandungi pernyataan import pada baris 1 dan membuang pengecualian di sana.

Satu cadangan yang sering saya lihat untuk masalah jenis ini ialah menggunakan "type": "module" 添加到 package.json (与 src/ 处于同一级别)。这会导致所有测试失败,并要求将 vue.config.js 重命名为 vue.config.cjs。这样做让我感到困惑: 错误:您似乎正在使用本机 ECMAScript 模块配置文件,该文件仅在异步运行 Babel 时受支持 , yang saya tidak faham.

Boleh sesiapa cadangkan apa yang perlu dilakukan di sini?

P粉439804514P粉439804514387 hari yang lalu787

membalas semua(1)saya akan balas

  • P粉419164700

    P粉4191647002023-10-20 15:50:04

    Saya dapat membetulkan ralat ini dengan menambahkan force jest import commonjs axios build

      "jest": {
        "moduleNameMapper": {
          "axios": "axios/dist/node/axios.cjs"
        }
      },
    

    Penyelesaian lain untuk package.json。使用 transformIgnorePatterns saya tidak berkesan untuk saya.

    balas
    0
  • Batalbalas