当前位置: 首页 > news >正文

Vite+TS项目中配置路径别名

在使用 Vite 和 TypeScript 的项目中配置路径别名,可以简化模块导入路径,提高代码的可读性和维护性。以下是详细的步骤和示例代码:

1. 配置 Vite 别名

前置条件 下载types/node 下面引入的path会用到

npm install @types/node --save-dev

原因:path模块是node.js内置的功能,但是node.js本身并不支持ts,所以需要手动安装
vite.config.ts 文件中配置路径别名。

  • 将alias配置为一个对象:
import { defineConfig } from "vite" 
import { resolve } from "path"  
export default defineConfig({ // ...其它配置resolve: { alias: {"@": resolve(__dirname, "src"),images: resolve(__dirname, "src/assets/images"),utils: resolve(__dirname, "src/utils"),},},
})
  • 将alias配置为一个数组:
import { defineConfig } from "vite" 
import { resolve } from "path"
export default defineConfig({  
// ...其它配置resolve: {alias: [{find: /^@\//,replacement: `${resolve(__dirname, "src")}/`,},{find: /^images\//,replacement: `${resolve(__dirname, "src/assets/images")}/`,},{find: /^utils\//,replacement: `${resolve(__dirname, "src/utils")}/`,},], },
}) 

2. 配置 TypeScript 别名

为了让 TypeScript 编译器识别这些别名,需要在 tsconfig.json 文件中进行相应的配置。

{"compilerOptions": {"baseUrl": ".","paths": {"@/*": ["src/*"],"images/*": ["src/assets/images/*"],"utils/*": ["src/utils/*"]}}
}

3. 使用别名

在项目中使用配置好的别名进行模块导入。

// 使用 @ 别名导入 src 目录下的模块
import MyComponent from "@/components/MyComponent";// 使用 images 别名导入图片
import logo from "images/logo.png";// 使用 utils 别名导入工具函数
import { someUtilityFunction } from "utils/someUtilityFile";

4. 检查配置

确保所有配置正确无误后,重新启动 Vite 开发服务器以应用新的配置。

npm run dev

通过以上步骤,你可以在 Vite 和 TypeScript 项目中成功配置路径别名,从而简化模块导入路径,提高开发效率。

http://www.lryc.cn/news/533701.html

相关文章:

  • 看盘细节系列 篇二:集合竞价的9点18分大单打到3%以下或以上,9点19分撤单
  • Java继承简介
  • redis之哨兵集群搭建
  • 保姆级AI开发环境搭建
  • Arduino 型号的对比
  • Kafka系列之:定位topic只能保存最新数据的原因
  • AtCoder Beginner Contest 391(A~E题题解)
  • mysql mvcc 锁 关系
  • 安卓手机基于 Termux 安装 AList 并设置开机自启的详细教程
  • LeetCode:503.下一个更大元素II
  • 实验5 配置OSPFv2验证
  • 第二节 docker基础之---镜像构建及挂载
  • 论文阅读:MGMAE : Motion Guided Masking for Video Masked Autoencoding
  • 记录一下 在Mac下用pyinstallter 打包 Django项目
  • 【漫话机器学习系列】084.偏差和方差的权衡(Bias-Variance Tradeoff)
  • deepseek本地部署-linux
  • 解决使用python提取word文档中所有的图片时图片丢失的问题
  • 【Spring相关知识】Spring应用如何优雅使用消息队列
  • 人工智能:从概念到未来
  • CUDA Graph
  • 1343. 大小为 K 且平均值大于等于阈值的子数组数目
  • IDEA+DeepSeek让Java开发起飞
  • C# winforms 使用菜单和右键菜单
  • IDEA编写SpringBoot项目时使用Lombok报错“找不到符号”的原因和解决
  • C基础寒假练习(6)
  • 【论文翻译】DeepSeek-V3论文翻译——DeepSeek-V3 Technical Report——第一部分:引言与模型架构
  • 【docker】Failed to allocate manager object, freezing:兼容兼容 cgroup v1 和 v2
  • 我使用deepseek高效学习-分析外文网站Cron定时执行任务
  • Android13-系统服务大管家-ServiceManager进程-启动篇
  • 论文笔记:Rethinking Graph Neural Networks for Anomaly Detection