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

Next.js如何为src目录的同级目录配置可用的路径别名

项目目录结构

路径别名配置失效解决方案

1 修正jsconfig.json配置

你将baseUrl设为项目根目录的配置逻辑正确,补全通配符和生效范围即可:

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/ethereum/*": ["./ethereum/*"],
      "@/*": ["./src/*"]
    }
  },
  "include": ["src/**/*", "ethereum/**/*"]
}

include字段为必填项,缺失会导致IDE识别不到src目录外的别名规则

2 适配项目打包工具配置

jsconfig仅用于IDE智能提示、路径跳转,打包阶段的别名识别需要单独给构建工具配置,常见工具配置示例如下:

  • Vite(vite.config.js)
import { defineConfig } from 'vite'
import path from 'path'

export default defineConfig({
  resolve: {
    alias: {
      '@/ethereum': path.resolve(__dirname, './ethereum'),
      '@': path.resolve(__dirname, './src')
    }
  }
})
  • Vue CLI(vue.config.js)
const path = require('path')
module.exports = {
  configureWebpack: {
    resolve: {
      alias: {
        '@/ethereum': path.resolve(__dirname, './ethereum'),
        '@': path.resolve(__dirname, './src')
      }
    }
  }
}
  • Create React App(以craco插件配置为例)
// craco.config.js
const path = require('path')
module.exports = {
  webpack: {
    alias: {
      '@/ethereum': path.resolve(__dirname, './ethereum'),
      '@': path.resolve(__dirname, './src')
    }
  }
}

3 生效验证

配置完成后重启IDE、重启项目开发服务即可生效,导入示例:

// 原相对路径写法
import contract from '../../ethereum/contract.js'
// 别名写法
import contract from '@/ethereum/contract.js'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 05:54:02