typescript + vite 项目如何配置别名

本文档介绍了在 TypeScript 项目中配置 Vite 和 tsconfig.json 的路径别名时遇到的导入路径不能以.ts扩展名结束的错误,以及项目无法运行的问题。通过在vite.config.js中设置`extensions`数组,并在tsconfig.json中添加`baseUrl`和`paths`配置,成功解决了这些问题,使得可以使用路径别名进行导入而无需显式指定扩展名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们为了省略冗长的路径,经常喜欢配置路径别名。但是在typescript下会遇到一些坑,比如导入路径不能以“.ts”扩展名结束,路径不识别等。下面我记录了我的处理方法。

vite.config.js:

export default defineConfig({
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src') // 配置别名
    }
  }
})

配置完之后,就可以在ide中使用别名了。但是这个时候我发现,路径下面报错了,hover上去后提示的错误是:导入路径不能以“.ts”扩展名结束。

既然不允许用扩展名,那么我省略扩展名好了。

export default defineConfig({
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src')
    },
    extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json']
  }
})

这样,扩展名就不需要写了。

但是,项目无法运行了,报错显示:找不到这个文件。

那就是编译出问题了,于是我调整了 tsconfig.json,添加如下配置:

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["src/*"] // 相对位置需要配置baseUrl才能识别,否则会报错
    }
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值