You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Webpack v5中配置与Vite类似的路径别名?

Webpack v5 中正确配置路径别名 '@' 的方法

报错原因很明确:Webpack 配置文件默认采用 CommonJS 模块规范,而 import.meta.url 是 ES 模块特有的属性,在 CommonJS 环境下无法识别,因此抛出语法错误。

下面是两种可行的正确配置方式:

方法一:使用 Node.js 内置的 __dirname(推荐)

__dirname 是 CommonJS 环境下的内置变量,代表当前配置文件所在的目录路径,直接通过 path.resolve 拼接 src 目录路径即可,写法简洁直观:

const path = require('path');

module.exports = {
  // 其他 Webpack 配置项...
  resolve: {
    alias: {
      '@': path.resolve(__dirname, './src')
    }
  }
};

方法二:基于 url 模块调整写法

如果坚持使用 url 模块的 API,可通过 __filename(当前配置文件的完整路径)替代 import.meta.url,适配 CommonJS 环境:

const { fileURLToPath, URL } = require('url');
const path = require('path');

module.exports = {
  // 其他 Webpack 配置项...
  resolve: {
    alias: {
      '@': fileURLToPath(new URL(`file://${path.resolve(__dirname, './src')}`))
    }
  }
};

内容的提问来源于stack exchange,提问作者Bilal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 05:35:27