TS 项目中给常用的路径定义一个别名 tsconfig.json
在 TS 项目中,可以定义一些自定义的别名,来取代经常需要引用的一些文件路径。
比如 Vue 项目中你可以需要经常从 /src
中取文件,在每个层级的文件中引用时的相对路径 ../../src
../src
都不确定。
其实可以通过这种方式来定义一个别名使用。
一、比如
我有一个文件引用了其它地方的一些文件,它们在引入的时候类似这样
../../response/Response
../../config/configProject
二、定义 tsconfig.json
的 paths
字段
别名的定义在 tsconfig.json
的 paths
字段中,像这样:
"paths": {
"@routes/*": ["./routes/*"],
"@entity/*": ["./entity/*"],
"@config/*": ["./config/*"],
"@response/*": ["./response/*"],
},
这个前面是你自定义的名字,后面是真实的路径,最好用 ./
这种相对路径。
比如:"@routes/*": ["./routes/*"],
就表示下面这样的路径等价。
/routes/diary.ts
=== @routes/diary
三、简化引入的路径
当你设置了 paths
的时候,编辑器会自动提示你可以简化这个路径的写法。如下:
它的对应关系
四、未解决问题
现在在Windows上,上面的配置正常使用,但在 macOS 上,同样的内容就无法正常使用,提示这样的错误:
有些路径无法这样使用,我不知道什么原因。