关于配置src别名中的path.resolve(“./src“)

vite.config.ts

复制代码
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      "@": path.resolve("./src") // 相对路径别名配置,使用 @ 代替 src
    }
  }
})

path.resolve 方法用于将路径或路径片段解析为绝对路径。

上面代码中**path.resolve(__dirname, 'src')** 也可以写成 path.resolve("./src") 。两者的区别:

path.resolve(__dirname, 'src')path.resolve("./src") 都是用于生成绝对路径的,但它们的基础路径不同。

  1. path.resolve(__dirname, 'src')的基础路径是 当前模块文件所在的(__dirname所在的目录)绝对路径:

    例如,如果当前模块的路径是 /home/user/project,那么path.resolve(__dirname, 'src') 将会返回 /home/user/project/src;如果当前模块的路径是 /home/user,仍会返回回/home/user/project/src

  • __dirname 是 Node.js 中的一个全局变量,表示当前模块的目录路径。
  • 'src' 是相对于当前模块目录的路径。
  1. path.resolve("./src")的基础路径是 相对于当前工作目录(脚本执行的目录)的路径:
  • "./src" 是相对于当前工作目录的路径。
  • 例如,如果当前工作目录是 /home/user/project,那么path.resolve("./src") 将会返回 /home/user/project/src;如果当前模块的路径是 /home/user,则会返回回/home/user/src

所以,主要区别在于基础路径不同。使用 __dirname 通常更安全,因为它是当前模块的目录,不受工作目录的影响。而使用相对路径可能受到工作目录的影响,因为工作目录可能会在不同的执行环境中变化。

相关推荐
浩星8 分钟前
iframe引入界面有el-date-picker日期框,点击出现闪退问题处理
前端·vue.js·elementui
技术钱10 分钟前
element plus 多个form校验
前端
yume_sibai19 分钟前
HTML HTML基础(3)
前端·html
米花丶26 分钟前
JSBridge安全通信:iOS/Android桥对象差异与最佳实践
前端·webview
唐•苏凯1 小时前
ArcGIS Pro 遇到严重的应用程序错误而无法启动
开发语言·javascript·ecmascript
萌萌哒草头将军1 小时前
🚀🚀🚀 Oxc 恶意扩展警告;Rolldown 放弃 CJS 支持;Vite 发布两个漏洞补丁版本;Rslib v0.13 支持 ts-go
前端·javascript·vue.js
接着奏乐接着舞。1 小时前
3D地球可视化教程 - 第1篇:基础地球渲染系统
前端·javascript·vue.js·3d·three.js
龙傲天6661 小时前
Scala的面向对象和函数式编程特性 Idea环境搭建和输入输出
前端
蓝色海岛1 小时前
element-ui表格嵌套表格,鼠标移入时样式错乱-问题调研及处理办法
前端
薄雾晚晴1 小时前
Rspack 实战:用 SWC Loader 搞定 JS 兼容(支持 IE 11 + 现代浏览器,兼顾构建速度)
前端·vue.js