TS 项目中给常用的路径定义一个别名 tsconfig.json

时间:2024-11-03 07:22:07

TS 项目中给常用的路径定义一个别名 tsconfig.json

在 TS 项目中,可以定义一些自定义的别名,来取代经常需要引用的一些文件路径。
比如 Vue 项目中你可以需要经常从 /src 中取文件,在每个层级的文件中引用时的相对路径 ../../src ../src 都不确定。
其实可以通过这种方式来定义一个别名使用。

一、比如

我有一个文件引用了其它地方的一些文件,它们在引入的时候类似这样

../../response/Response
../../config/configProject

在这里插入图片描述

二、定义 tsconfig.jsonpaths 字段

别名的定义在 tsconfig.jsonpaths 字段中,像这样:

    "paths": {
      "@routes/*": ["./routes/*"],
      "@entity/*": ["./entity/*"],
      "@config/*": ["./config/*"],
      "@response/*": ["./response/*"],
    },

这个前面是你自定义的名字,后面是真实的路径,最好用 ./ 这种相对路径。

比如:"@routes/*": ["./routes/*"], 就表示下面这样的路径等价。

/routes/diary.ts === @routes/diary
在这里插入图片描述

三、简化引入的路径

当你设置了 paths 的时候,编辑器会自动提示你可以简化这个路径的写法。如下:

在这里插入图片描述

它的对应关系

在这里插入图片描述

四、未解决问题

现在在Windows上,上面的配置正常使用,但在 macOS 上,同样的内容就无法正常使用,提示这样的错误:

有些路径无法这样使用,我不知道什么原因。

在这里插入图片描述
在这里插入图片描述