搜尋

首頁  >  問答  >  主體

ReferenceError: __dirname 未在 ES 模組作用域建置腳本中定義

我有一個問題 「ReferenceError:__dirname 未在 ES 模組作用域中定義」錯誤

import path from 'path'
import { defineConfig } from 'vite'
import Vue from '@vitejs/plugin-vue'
import Pages from 'vite-plugin-pages'
import Layouts from 'vite-plugin-vue-layouts'
import Components from 'unplugin-vue-components/vite'
import AutoImport from 'unplugin-auto-import/vite'
import Unocss from 'unocss/vite'
import { campaign } from './package.json'



export default defineConfig({
  resolve: {
    alias: {
      '~/': `${path.resolve(__dirname, 'src')}/`,
    },
  },...

誰能提供解決方案嗎? 非常感謝!

P粉642919823P粉642919823412 天前822

全部回覆(1)我來回復

  • P粉413307845

    P粉4133078452023-11-04 00:56:46

    如錯誤所示,__dirname 未在 ES 模組作用域中定義。

    試試這個:

    import url from 'url'
    
    const __filename = url.fileURLToPath(import.meta.url);
    const __dirname = path.dirname(__filename);

    現在您可以在 path.resolve() 中使用 __dirname

    回覆
    0
  • 取消回覆